AGUNG TUTORIAL

Belajar Bordir Wilcom dan Tajima Mesin SWF, VBA Macro Excel, Design Grafis CorelDraws, Video Editing, Download Software-software, Solusi Masalah Error Komputer, Jaringan dan Internet, Analisis Jaringan, Analisis Problem Hardware dan sebagainya

9/25/2018

Cut, Copy, Dan Paste Vba Macro Excel

Deskripsi

Kita akan mempelajari beberapa metode berbeda untuk Cut, Copy dan Paste menggunakan VBA Macro Excel. Dimana hasil Paste akan disimpan di Range atau Cell lainnya. Serta Cut, Copy dan Paste dengan kriteria tertentu.

Copy (Cut) dan Paste Pada Satu Cell


Contoh metode copy atau cut dan paste pada satu cell, misalkan pada Cell atau Range "A3" yang berada pada Tabel 1 akan di pastekan ke Range “E3” yang berada pada pada Tabel 2.


Dengan fungsinya adalah sebagai berikut,

 Sub paste_SatuCell()  
   ' Keyboard Shortcut: Ctrl+Shift+G  
   'Copy dan Paste Satu Cell  
   Range("A3").Copy Range("E3")  
   'Cut dan Copy Satu Cell  
   Range("A3").Cut Range("E3")  
   Application.CutCopyMode = xlCopy  
 End Sub  


Untuk menjalankannya cukup dengan menekan tombol CTRL+ SHIFT + G pada keyboard.

Copy Ke Active Cell

Jika ingin copy Active Cell ke Cell lainnya dengan mengatur Offset atau lokasi baris kolom setelah Active Cell.


Keterangan: garis kotak putus-putus merupakan Cell yang sedang aktif yaitu “A3” akan di copykan ke yang sebaris dengan Cell yang aktif dan 3 baris setelah Cell yang aktif. Untuk mengeksekusinya cukup dengan CTRL + SHIFT + H pada Keyboard.

 Sub CopySelection()  
   ' HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   ' Keyboard Shortcut: Ctrl+Shift+H  
   'Paste ke Range Yang telah ditentukan  
   ActiveCell.Copy Range("A3")  
   'Offset paste (Offset 0 cells kebawah dan 4 ke kanan)  
   'Pastekan sebaris dengan Active cell dan 4 kolom setelah active cell  
   ActiveCell.Copy  
   ActiveCell.Offset(0, 4).PasteSpecial (xlPasteAll)  
 End Sub  


Copy (Cut) dan Paste Ke Beberapa Cell atau Range


Contoh metode copy atau cut dan paste ke beberapa cell, misalkan pada Cell atau Range “A3:B3” yang berada pada Tabel 1 akan di pastekan ke Range “E3:F3” yang berada pada pada Tabel 2.


Dengan fungsinya adalah sebagai berikut,

 Sub paste_BanyakCell()  
   ' HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   ' Keyboard Shortcut: Ctrl+Shift+K  
   'Copy dan Paste Satu Cell  
   Range("A3:B3").Copy Range("E3:F3")  
   'Cut dan Copy Satu Cell  
   Range("A3:B3").Cut Range("E3:F3")  
   Application.CutCopyMode = xlCopy  
 End Sub  

Untuk menjalankannya cukup dengan menekan tombol CTRL+ SHIFT + K pada keyboard.

Copy (Cut) dan Paste Ke Worksheet Lain Atau Workbook

 Sub Paste_SheetdanWorkBook_Lain()  
   ' HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   ' Keyboard Shortcut: Ctrl+Shift+Y  
   'Copy atau Cut dan Paste ke Sheet lainnya  
   Sheet1.Range("A1:B4").Copy Sheet2.Range("A1:B4")  
   'Sheet1.Range("A1:B4").Cut Sheet2.Range("A1:B4")  
   Workbooks("Cut, Copy, Paste Vba Macro Excel.xlsm").Worksheets("sheet1").Range("A1:B4").Copy _  
   Workbooks("book2.xlsm").Worksheets("sheet1").Range("A1:B4")  
   Application.CutCopyMode = xlCopy  
 End Sub  

Value Paste

Umumnya untuk mengcopykan suatu cells menggunakan kode perintah “.Copy” dan “.Paste”. Namun cara tersebut bukanlah satu-satunya cara ada cari lain yaitu dengan cara memanfaatkan value setiap cells dengan menggunakan operator pembanding “=”. Artinya nilai pada Cells yang satu langsung diisikan kepada Cells yang lain dengan perintah Operator “=”.

 Sub ValuePaste()  
   ' HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   ' Keyboard Shortcut: Ctrl+Shift+E  
   'Value Paste antar cell  
   Range("E3:F3").value = Range("A3:B3").value  
   'Value Paste antar Sheets  
   Sheet2.Range("A1:B4").value = Sheet1.Range("A1:B4").value  
   'Value Paste antar Workbook  
   Workbooks("book2.xlsm").Worksheets("sheet1").Range("A1:B4").value = _  
   Workbooks("Cut, Copy, Paste Vba Macro Excel.xlsm").Worksheets("sheet1").Range("A1:B4").value  
 End Sub  

Paste Special

Paste Special membolehkan kita Copy dan Paste dengan properties yang lebih detail. Misalkan nilai yang di copykan adalah Formula(rumus) cell, formats dari cell, values, lebar cell, dan lain-lain serta memungkinkan untuk perintah Paste yang khusus misalkan Skip Blank atau melewatkan cell yang kosong untuk dicopykan.


Sekarang kita akan mencoba copy format Accounting pada Range “B10:B12” pada Tabel 3 ke Range “E10:E12” pada Tabel 4.


Dimana kode perintah copy PasteSpecial Format Number VBA Macro Excel adalah sebagai berikut,

 Sub PasteSpecialYes()  
   ' HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   ' Keyboard Shortcut: Ctrl+Sh  ift+F  
   'Lakukan Copy cell terlebih dahulu  
   Range("B10:B12").Copy  
   'Paste Satuan Format Satuan Rupiah ke Range D10:D12  
   Range("E10:E12").PasteSpecial Paste:=xlPasteFormats  
   'Paste Lebar Kolom  
   Range("E10:E12").PasteSpecial Paste:=xlPasteColumnWidths  
   'Paste Formulas atau Rumus Excel  
   Range("E10:E12").PasteSpecial Paste:=xlPasteFormulas  
   'Paste dengan melewatkan cell yang kosong SkipBlanks  
   Range("E10:E12").PasteSpecial Paste:=xlPasteFormats, _  
   Operation:=xlPasteSpecialOperationNone, SkipBlanks:=False, Transpose:=True  
   Application.CutCopyMode = xlCopy  
 End Sub  

Cut, Copy dan Paste Dengan Kriteria Tertentu

Copy (Cut) dan Paste dengan Kriteria ini bertujuan untuk mengumpulkan semua data yang duplikat atau data yang sama. Misal ketika akan menghitung hasil penjualan barang per unit setiap waktunya dimana barang-barang tersebut terdiri dari Tas, Dompet, Baju dan Alas Kaki. Berikut data-data yang dimaksud,


Data-data tersebut akan dipisahkan kedalam beberapa Tabel Dibawah ini,


Sehingga kode perintah VBA macro yang dapat digunakan adalah sebagai berikut,

 Sub CopyDenganKriteria()  
   Dim KataKunci As String: KataKunci = "Sendal"  
   Dim RangeCari As Range  
   Set RangeCari = Range("J3:J9")  
   Dim cell As Range  
   Set cell = RangeCari.Find(KataKunci)  
   'HTTPS://AGUNGPANDUAN.BLOGSPOT.CO.ID  
   If cell Is Nothing Then  
     MsgBox ("Not Found")  
     Exit Sub  
   End If  
   Dim NilaiCellPertama As String  
   NilaiCellPertama = cell.Address  
   i = 1  
   Do  
     'Debug.Print "Found: " & cell.Address  
     cell.Interior.ColorIndex = 6  
     Range("$I$" & cell.Row & ":$N$" & cell.Row).Interior.ColorIndex = 6  
     Range("I" & 13 + i).value = i  
     Range("J" & 13 + i).value = Range("J" & cell.Row).value  
     Range("K" & 13 + i).value = Range("K" & cell.Row).value  
     Range("L" & 13 + i).value = Range("L" & cell.Row).value  
     Range("M" & 13 + i).value = Range("M" & cell.Row).value  
     Range("N" & 13 + i).value = Range("N" & cell.Row).value  
     i = i + 1  
     Set cell = RangeCari.FindNext(cell)  
   Loop While NilaiCellPertama <> cell.Address  
 End Sub  

 Private Sub CommandButton1_Click()  
   Call CopyDenganKriteria  
 End Sub  

Hasil dari proses Copy dengan kriteria ini adalah:





Demikianlah beberapa metode berbeda untuk Cut, Copy dan Paste menggunakan VBA Macro Excel. Disarankan seringlah membaca tentang fungsi-fungsi kode perintah VBA Macro Excel di Blog ini.

Semoga Bermanfaat

Terima Kasih telah berkunjung di https://www.agungpanduan.com

Tidak ada komentar:

Posting Komentar