Anda tidak memberikan nama atau indeks lembar kerja Anda, jadi saya harus menggunakan indeks umum 1
& 2
.
Terbatasnya informasi yang diberikan, ini yang terbaik yang bisa saya lakukan untuk Anda. Tetapi seharusnya tidak sulit untuk memodifikasi kode agar sesuai dengan apa yang ingin Anda lakukan dengan tepat.
Option Explicit
Sub copyTransactions()
' ws = the worksheet that contains the code to copy
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
'Create a multi-dimensional array that contains your two columns of data
Dim myArr() As Variant
myArr = ws.UsedRange.Columns("A:B").Value
'ws2 = the worksheet you are copying TO
Dim i As Long, ws2 As Worksheet, x As Long
Set ws2 = ThisWorkbook.Worksheets(2)
'Loop the array, and if it matches your month of 2 (Feb) then copy
'the data from ws to ws2
With ws2
For i = 1 To UBound(myArr)
If month(myArr(i, 1)) = 2 Then ' 2 = February
x = x + 1
.Cells(x, 1) = myArr(i, 1) ' the ,1 is column A
.Cells(x, 2) = myArr(i, 2) ' the ,2 is column B
End If
Next
End With
End Sub
Singkatnya, Anda mengambil kolom A + B dan menempatkannya ke dalam array myArr()
. Anda kemudian akan mengulang array ini di kolom A dan menetapkan kriteria untuk mencocokkan setiap bulan yang cocok dengan indeks bulan Anda 2 (2 = Februari). Jika ditemukan, Anda kemudian melanjutkan untuk menyalin array ke ws2
.