動的配列は、配列変数のひとつです。配列内の部屋(要素)を、マクロ中で何度も増減できるという便利機能ですが、要素数を変更するReDimには注意が必要です。また、実務で動的配列を使うときは、必要な要素数を取得して、一気に要素数を決めるやり方と、新しいデータが登場するたびに、1要素ずつ増やしていく2パターンがあります。実務でよくやる、かつ難しいのが後者です。この動画を見れば、それがイメージできます。
↓左上にある
をクリックすると、チャンネル登録できます。ぜひ、チャンネル登録をお願いします。あなたのチャンネル登録が、私のやる気を維持向上してくれます(笑)
''Sheet1
''動的配列(パターン1)
Sub Macro1()
Dim A() As String, i As Long, N As Long
N = Cells(Rows.Count, 6).End(xlUp).Row
ReDim A(N - 1)
For i = 1 To N
A(i - 1) = Cells(i, 6)
Next i
Range("A1").AutoFilter 1, A, xlFilterValues
End Sub
''Sheet2
''動的配列(パターン2)
Sub Macro1()
Dim A() As String, i As Long, N As Long
On Error Resume Next
For i = 1 To Cells(Rows.Count, 7).End(xlUp).Row
If Cells(i, 6) = "○" Then
N = UBound(A) + 1
ReDim Preserve A(N)
A(N) = Cells(i, 7)
End If
Next i
Range("A1").AutoFilter 1, A, xlFilterValues
End Sub
動画で使用したブックのダウンロード(20200714.xlsm)
Office TANAKAのYouTubeチャンネルはこちら(動画一覧ページ)