ListObject から最初の 10 行を選択し、それらを別の ListObject に貼り付ける VBA コードを作成したいと考えています。行のコレクションが新しいシートにコピーされると、それらが処理され、次に次の 10 行が選択されて処理されます。
標準の VBA 関数を使用してこれを実現できますが、ListObject を使用してこれを実現したいと考えています。
Sub PopulateSectionOfData()
Dim loInput As ListObject
Dim loOutput As ListObject
Dim intNumOfColumns As Integer
Dim rngToCopy As Range
Dim intRowsInFile As Integer
' Create the inout and output ListObjects
Set loInput = Worksheets(WS_INPUT).ListObjects(LO_INPUT)
Set loOutput = Worksheets(WS_OUTPUT).ListObjects(LO_OUTPUT)
' Delete all the current rows from the output table
Worksheets(WS_OUTPUT).ListObjects(LO_OUTPUT).DataBodyRange.Delete
' Set variables
intNumOfColumns = loInput.ListColumns.Count
WorkbookCounter = 1
intRowsInFile = 10 ' Select 10 records at a time
' Get 10 records at a time from the input file
For i = 1 To loInput.DataBodyRange.Rows.Count Step intRowsInFile - 1
'???? - This is the area that i am unsure on
Set rngToCopy = loInput.DataBodyRange(p, 1)
rngToCopy.Copy loOutput
'????
' TODO - Add further processing here
Next i
' Clear used objects
Set loInput = Nothing
Set loOutput = Nothing
End Sub
ListObjects を使用したいので、この問題に関するヘルプをいただければ幸いです。
前もって感謝します