VBA Kopyala Yapıştır - VBA'da Kopyalamanın ve Yapıştırmanın En İyi Yolları (Örneklerle)

VBA'da Kopyala Yapıştır, excel çalışma sayfasında yaptığımıza benzer, bir değeri kopyalayıp başka bir hücreye yapıştırabildiğimiz gibi, yalnızca değerleri yapıştırmak için özel yapıştır da kullanabiliriz, benzer şekilde VBA'da da aralık özelliği ile kopyalama yöntemini kullanıyoruz bir hücreden diğerine bir değer kopyalayın ve çalışma sayfası işlevini kullandığımız değeri yapıştırmak için özel yapıştır veya yapıştır yöntemini kullanın.

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

Aşağıda, VBA kullanarak excel'de nasıl kopyalayıp yapıştırılacağına dair bazı örnekler verilmiştir.

Excel'de yaptığımız temel şey kopyalarız, keseriz ve verileri bir hücreden diğerine yapıştırırız. Ayrıca özel bir giriş gerektirmez. Ancak, VBA kodlamayı öğrenirken kodlama dilinde de aynı kavramı anlamak önemlidir. VBA'da Kopyala Yapıştır, excel'de her gün yaptığımız rutin görevdir. Önce kopyalamak için hangi hücrenin kopyalanacağına karar vermemiz gerekiyor.

Örnek 1 - Aralık Nesnesini Kullanarak Değerleri Kopyalama ve Yapıştırma

A1 hücresinde "Excel VBA" sözcüğüne sahip olduğunuzu varsayın.

Örneğin A1 hücresini kopyalamak istiyorsanız VBA RANGE nesnesini kullanabiliriz.

Kod:

Alt Copy_Example () Aralığı ("A1"). Sub

Hücreye başvurduğunuz an, onunla tüm özellikleri ve yöntemleri görebiliriz. Bu nedenle, " Kopyala" yöntemini seçin .

Kod:

Alt Copy_Example () Aralığı ("A1"). Son Alt Kopyala

Yöntemi seçtikten sonra, Copy yönteminin bağımsız değişkenini görmek için boşluk tuşuna basın.

Hedef yazıyor .

Bu bir şey değil, ancak YAPIŞTIR yöntemini seçmeden VBA'daki değerleri nereye kopyalayıp yapıştırmak istiyorsunuz.

Aynı sayfaya yapıştırıyorsak, Range nesnesini kullanarak hücreyi seçebiliriz. Diyelim ki değeri B3 hücresine yapıştırmak istiyorsak, hedefi "Aralık (" B3 ")" olarak koyabiliriz .

Kod:

Alt Copy_Example () Aralık ("A1"). Kopyalama Hedefi: = Aralık ("B3") Son Alt

Bu, verileri A1 hücresinden kopyalayıp B3 hücresine yapıştırır.

Verileri yapıştırmak için aşağıdaki yöntemi de kullanabiliriz.

Kod:

Alt Copy_Example () Aralık ("A1"). Kopyalama Aralığı ("B3"). ActiveSheet'i seçin.

İlk olarak, verileri A1 hücresinden kopyalayıp seçip B3 hücresine yapıştıracağız.

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

Şimdi, VBA makrosunu kullanarak farklı çalışma sayfalarındaki değeri kopyalayıp yapıştırmak istiyorsak, Hedef bağımsız değişkeninde, ÇALIŞMA SAYFALARI nesnesini kullanarak sayfa adına başvurmamız ve ardından bu ÇALIŞMA Sayfasındaki hücre aralığından bahsetmemiz gerekir. Aşağıdaki kod işi yapacak.

Kod:

Alt Copy_Example () Aralık ("A1"). Kopyalama Hedefi: = Çalışma Sayfaları ("Sayfa2") Aralık ("B3") Son Alt

Verileri belirli bir sayfadan kopyalamak ve başka bir belirli sayfaya yapıştırmak istiyorsak, sayfaların her iki adını da belirtmemiz gerekir.

Öncelikle kopya kağıdına değinmemiz gerekiyor.

Çalışma sayfaları ("Sayfa1"). Aralık ("A1"). Kopyala

Ardından Hedef bağımsız değişkeninde, hedeflenen çalışma sayfası adını ve hücrenin aralığını belirtmemiz gerekir.

Hedef: = Çalışma Sayfaları ("Sayfa2"). Aralık ("B3")

Yani kod böyle olmalı.

Kod:

Alt Copy_Example () Çalışma Sayfaları ("Sayfa1") Aralık ("A1"). Kopyalama Hedefi: = Çalışma Sayfaları ("Sayfa2") Aralık ("B3") Son Alt

Örnek 3 - Bir Çalışma Kitabından Başka Bir Çalışma Kitabına Kopyalama

Aynı çalışma kitabındaki çalışma sayfasından başka bir çalışma sayfasına nasıl kopyalayacağımızı gördük. Ancak bunu bir çalışma kitabından başka bir çalışma kitabına da yapabiliriz.

Aşağıdaki koda bir göz atın.

Kod:

SubCopy_Example () Çalışma Kitapları ("Kitap 1.xlsx") Çalışma Sayfaları ("Sayfa1") Aralık ("A1") Çalışma Kitaplarını Kopyala ("Kitap 2.xlsx"). ActiveWorkbook.Worksheets ("Sayfa 2") öğesini etkinleştirin ActiveSheet.Paste End Sub

İlk olarak, A1 hücresinden “Book1.xlsx” çalışma kitabındaki “Sheet1” çalışma sayfasındaki verileri kopyalayacaktır.

Workbooks("Book 1.xlsx").Worksheets("Sheet1").Range("A1").Copy”

Then it will activate the workbook “Book 2.xlsx”.

Workbooks("Book 2.xlsx").Activate

In the active workbook, it will select the worksheet “Sheet 2.”

ActiveWorkbook.Worksheets("Sheet 2").Select

Now in the active sheet, it will paste.

ActiveSheet.Paste

Alternative Way for using Copy-Paste in VBA

We have one more alternative way of having the data from one cell to another cell. Assume you have the word “Excel VBA” in the cell A1 and you need the same to come in cell B3.

One method we have seen is using the VBA copy and paste method. Now I will show you one of the alternative ways. Look at the below piece of code to understand.

Code:

Sub Copy_Example1() Range("A1").Value = Range("B3").Value End Sub

The above says whatever the value is there in the cell A1 should be equal to the value in the cell B3.

Range("A1").Value = Range("B3").Value

Even though this is not a copy and paste method still adds more value to our coding knowledge.

Top Ways of VBA Copy and Paste as Values

Now we will see different ways of VBA copy and paste values. Assume you are in the cell A1 as shown in the below image.

  • If we want to copy and paste, we need to reference the cell here. Rather we can just use a property of Selection. Copy method.

Code:

Sub Copy_Example1() Selection.Copy Destination:=Range("B3") End Sub

OR

Sub Copy_Example1() ActiveCell.Copy Destination:=Range("B3") End Sub
  • If you want to copy the entire used range of the worksheet, you can use the below code.

Code:

Alt Kopya_Örnek2 () Çalışma Sayfaları ("Sayfa1") KullanılmışRange.Copy Hedef: = Çalışma Sayfaları ("Sayfa2") Aralık ("A1") Son Alt

Bu, kullanılan tüm aralığı "Sayfa1" çalışma sayfasında kopyalayacak ve aynısını "Sayfa2" çalışma sayfasına yapıştıracaktır.

Ilginç makaleler...