EXCEL VBA'DA KOPYALA YAPIŞTIR

 

VBA'da (Uygulamalar için Visual Basic), VBA kodunda Kopyala ve Yapıştır, bir Excel çalışma kitabı veya diğer Microsoft Office uygulamaları içinde verileri veya bilgileri bir konumdan diğerine taşımak için kullanılan yöntemlerdir. Kopyala yöntemi, seçili verileri veya bilgileri bir hücreden veya hücre aralığından Excel VBA'da bir çalışma sayfasında dinamik kopyala ve yapıştır yoluyla panoya kopyalamak için kullanılır.

Bir hücrenin değerini başka bir hücreye kopyalamak istediğiniz bir örneği ele alalım. rand() fonksiyonunu kullanarak, A1 hücresi için rastgele bir değer üretirsiniz.

VBA'da Kopyala ve Yapıştır - 1

Aşağıda gösterildiği gibi, Excel VBA'da kopyala-yapıştır formülünü kullanarak değeri A1 Hücresinden D4 Hücresine kopyalayıp yapıştırıyoruz. Paste yöntemi, panoda saklanan verileri veya bilgileri çalışma sayfasındaki belirli bir konuma yapıştırmak için kullanılır. Aşağıda gösterildiği gibi VBA'da Kopyala Yapıştır için çıktıyla sonuçlanacaktır.

VBA'da Kopyala ve Yapıştır -
  • Çıktı
VBA'da Kopyala ve Yapıştır - 3

VBA'da Kopyala Yapıştır Nasıl Yapılır?

VBA'da Kopyala Yapıştır yapmak için, bir çalışma sayfasındaki verileri veya bilgileri bir konumdan diğerine taşımak amacıyla Kopyala ve Yapıştır yöntemlerini kullanabilirsiniz.

Bu yöntemlerin nasıl kullanılacağına dair bir örnek şöyledir:

  1. Araç çubuğundaki “Geliştirici” bölümüne gidin ve “Visual Basic” seçeneğine tıklayın. Şimdi, işlevler ve alt prosedürler eklemek için VBA Düzenleyicisi açılır. Ardından, yeni bir modül veya boş sayfa oluşturmak için “Ekle” ve ardından “Modül” düğmesine tıklayın.


    Temel Örnek - Adım 1a



  2. A1-A10 hücrelerinden oluşan bir tabloyu ve çalışma sayfasının başka bir bölümüne kopyalanacak değerlerini düşünün. Burada VBA Excel Range'i kopyalayıp yapıştırmak için Range işlevini kullanırız.


    Temel Örnek - Adım 2

  3. Aralıktaki değerleri kopyalayıp yapıştırmak için bir alt prosedür oluşturun.


    Temel Örnek - Adım 3

  4. Kopyalanacak aralığı seçin ve bunu panoya kopyalayın. Buradaki aralık A1:A10'dur.


    Temel Örnek - Adım 4

  5. Kopyalanan değerleri yapıştırmak istediğiniz yeri seçin ve ActiveSheet formülünü kullanarak yapıştırın. İşte, C1 hücresi.


    Temel Örnek - Adım 5

    Kod:

    Sub PrintExample()
    Range(“A1:A10”).Select
    Selection.Copy
    Range(“C1”).Select
    ActiveSheet.Paste
    End Sub

  6. Kodu çalıştırmak için alt prosedürü çalıştırmak üzere Çalıştır düğmesine veya “F5” düğmesine tıklayın. Kopyalanan değerleri C1-C10 hücrelerinden yapıştıracaktır.


    VBA'da Kopyala ve Yapıştır - Temel Örnek - Adım 6


Örnekler

Excel'de Kopyala-Yapıştır işlemini detaylı anlamak için bazı örneklere bakalım.

Örnek 1 – Aralık Nesnesini Kullanarak Değerleri Kopyala ve Yapıştır

VBA'da birden fazla hücreden bir değer aralığını kopyalayıp diğer hücrelere yapıştırmak istediğiniz bir kopyala yapıştırma örneğini düşünün. Burada, sayılar Excel işlevi randbetween() kullanılarak 1-10 arasında rastgele üretilir

=RANDBTWEEN(1,10)

Bu değerleri E1-E10 hücrelerine yazdırır.

VBA'da Kopyala ve Yapıştır - Örnek 1
  • Adım 1: Bir aralıktaki değerleri kopyalayıp yapıştırmak için kullanıcı tanımlı bir alt prosedür tanımlayın.
Örnek 1 - Adım 1
  • Adım 2: VBA'da Aralık  veri türünün Kaynak  ve  Hedef olmak üzere iki değişkenini tanımlayın  .
Örnek 1 - Adım 2
  • Adım 3: Kaynak  ve  Hedef'i kullanarak kopyalanacak kaynağı ve yapıştırılacak hedefi değişkenleri atayın  .
Örnek 1 - Adım 3
  • Adım 4: Kopyala fonksiyonunu kullanarak kaynak değerlerini panoya kopyalayın ve PasteSpecial fonksiyonunu kullanarak yapıştırın.
Örnek 1 - Adım 4

Kod:

Sub CopyPasteWithRange()
Dim Source As Range
Dim Dest As Range
Set Source = Range(“E1:E10”)
Set Dest = Range(“G1:H1”)
Source.Copy
Dest.PasteSpecial xlPasteValues
End Sub

Burada, xlPasteValues ​​yapıştırılacak aralığın bir kısmını belirtir, bu durumda tüm değerler.

  • Adım 5: Run butonunu kullanarak kodu çalıştırın. Çıktı, aşağıda gösterildiği gibi VBA'da Kopyala Yapıştır'dır. Rastgele bir fonksiyon kullandığımız için, kaynak değerleri kod her çalıştırıldığında değişecektir.
VBA'da Kopyala ve Yapıştır - Örnek 1 - Adım 5


Örnek 2 – Aynı Çalışma Kitabındaki Başka Bir Çalışma Sayfasına Kopyalama

Bir çalışma sayfasından diğerine değerleri kopyalamanız gerekebilecek bir tablo düşünün. RANGE ve VALUE işlevlerini kullanarak değerleri başka bir sayfaya kopyalayıp yapıştırıyoruz. Değerlerin C1-C10 hücrelerindeki “Example_2.1”de olduğunu varsayın.

VBA'da Kopyala ve Yapıştır - Örnek 2
  • Adım 1: Değerleri bir çalışma sayfasından diğerine kopyalayıp yapıştıran bir alt prosedür başlatın.
Örnek 2 - Adım 1
  • Adım 2: Range veri tipinde iki değişken (s' ve 'd') tanımlayın.
Örnek 2 - Adım 2
  • Adım 3: Kaynak ve hedef sütunlarını sırasıyla 's' ve 'd'ye atayın.
Örnek 2 - Adım 3
  • Adım 4: VBA'da Kopyala-Yapıştır yapmak için , “Example_2.1”deki C sütunundan “Example_2”deki F sütununa tabloyu başarıyla kopyalayıp yapıştırmak için değerleri eşitleyin.
Örnek 2 - Adım 4

Kod:

Sub CopyAndPasteBetweenSheets()
Dim s As Range
Dim d As Range
Set s = Worksheets(“Example_2.1”).Range(“C1:C10”)
Set d = Worksheets(“Example_2”).Range(“F1:F10”)
d.value = s.value
End Sub

  • Adım 5: VBA kodunu çalıştırın ve çıktıyı yazdırın.
VBA'da Kopyala ve Yapıştır - Örnek 2 - Adım 5

Örnek 3 – Bir çalışma kitabından diğer çalışma kitabına kopyalama

Değerlerinin bir çalışma kitabından diğerine kopyalanması gereken bir tabloyu düşünün.

VBA'da Kopyala ve Yapıştır - Örnek 3
  • Adım 1: Bir çalışma kitabından diğerine değerleri kopyalayıp yapıştırmak için bir alt prosedür oluşturun.
Örnek 3 - Adım 1
  • Adım 2: Aralık veri türünden s2 ve d2 adlı iki değişkeni başlatın.
Örnek 3 - Adım 2
  • Adım 3: Kaynak çalışma kitabını s2'ye, değerlerin kaynaktan d2'ye kopyalandıktan sonra yazdırılacağı hedef çalışma kitabını atayın.
Örnek 3 - Adım 3
  • Adım 4: Kopyalama işleminin gerçekleşmesi için her iki değeri de eşitleyin.
Örnek 3 - Adım 4

Kod:

Sub CopyAndPasteBetweenWorkbooks()
Dim s2 As Range
Dim d2 As Range
Set s2 = Workbooks(“Copy and Paste in VBA.xlsm”). Worksheets(“Example_3”).Range(“A1:A10”)
Set d2 = Workbooks(“Copy_paste.xlsm”).Worksheets(“Sheet1”).Range(“A1:A10”)
d2.value = s2.value
End Sub

  • Adım 5: Kodu çalıştırdıktan sonra, tablo Çalışma Kitabı “Copy_paste.xlsm”deki A1-A10 hücrelerine yazdırılacaktır.
VBA'da Kopyala ve Yapıştır - Örnek 3 - Adım 5

VBA'da Değer Olarak Kopyalama ve Yapıştırmanın En İyi Yolları

  1. 'Kopyala' ve 'Yapıştır' yöntemlerini kullanarak.
VBA'da Değer Olarak Kopyalama ve Yapıştırmanın En İyi Yolları - 1

Bu yöntem, Copy metodunu kullanarak değerleri kaynak aralıktan panoya kopyalar ve ardından PasteSpecial metodunu kullanarak değerleri panodan hedef aralığa yapıştırır.

  1. Değer özelliğini kullanma
VBA'da Değer Olarak Kopyalama ve Yapıştırmanın En İyi Yolları - 2

Bu yöntem, Değer özelliğini kullanarak değerleri doğrudan kaynak aralıktan hedef aralığa atar. Verileri kopyalamak ve yapıştırmak için panoyu kullanmaktan daha hızlı ve daha verimlidir.

  1. Hedef argümanı ile Range.Copy formülünü kullanma:
VBA'da Değer Olarak Kopyalama ve Yapıştırmanın En İyi Yolları - 3

Bu yöntem, değerleri kaynak aralıktan hedef aralığa kopyalamak için hedef argümanlı Kopyala yöntemini kullanır. Bu yöntem, verileri kopyalamak ve yapıştırmak için panoyu kullanmaktan daha hızlıdır.

  1. Range.Value2 özelliğini kullanarak.
VBA'da Değer Olarak Kopyalama ve Yapıştırmanın En İyi Yolları - 4

Bu yöntem, değerleri doğrudan kaynak aralıktan hedef aralığa atamak için Range nesnesinin Value2 özelliğini kullanır. Bu yöntem, Value özelliğini kullanmaktan daha hızlıdır, ancak yalnızca bazı veri türleri için işe yarayabilir.

Yorum Gönder

DT KARİYER KPSS Dünyasına Hoş Geldiniz
Sevgili dostum nasıl yardımcı olabilirim?
Bu alana yazınız...