添加多行数据到 table
Add multiple rows of data to table
我正在尝试在 Excel 中编写一个宏,以帮助我将原始银行数据移动到包含在单独作品中的 table 中 sheet。
在我的文件中工作sheet:
Raw Data Sheet - 这项工作sheet 有原始银行数据
Transactions Sheet - 这项工作sheet 包含一个 table(“Table1”),其中存储了所有银行交易
我想将“原始数据”sheet 中列出的所有交易添加到表 1 的底部。每次执行宏时事务的数量都不同,所以我需要找到一种方法让宏计算每次需要添加到 Table1 的总行数,并添加所有的数据行。到目前为止,我编写的宏正确地将数据添加到 Table1,但只是第一行数据。此外,我希望数据在移动后自动从“RawData”作品中删除sheet。
我目前使用的代码是:
Dim ws As Worksheet
Dim newrow As ListRow
Dim inpt As Worksheet
Set ws = Worksheets("Transactions")
Set inpt = Worksheets("RawData")
Set newrow = ws.ListObjects("Table1").ListRows.Add
With newrow
.Range(1) = Range("A2")
.Range(2) = Range("B2")
.Range(3) = Range("C2")
.Range(4) = Range("D2")
.Range(5) = Range("E2")
.Range(6) = Range("F2")
End With
End Sub
我正在使用 Office 365。
非常感谢您的帮助。
您需要遍历数据行。类似于:
i = 2
Do until Range("A" & i).Value = ""
Set newrow = ws.ListObjects("Table1").ListRows.Add
With newrow
.Range(1) = Range("A" & i)
.Range(2) = Range("B" & i)
.Range(3) = Range("C" & i)
.Range(4) = Range("D" & i)
.Range(5) = Range("E" & i)
.Range(6) = Range("F" & i)
End With
i = i + 1
Loop
我正在尝试在 Excel 中编写一个宏,以帮助我将原始银行数据移动到包含在单独作品中的 table 中 sheet。
在我的文件中工作sheet:
Raw Data Sheet - 这项工作sheet 有原始银行数据
Transactions Sheet - 这项工作sheet 包含一个 table(“Table1”),其中存储了所有银行交易
我想将“原始数据”sheet 中列出的所有交易添加到表 1 的底部。每次执行宏时事务的数量都不同,所以我需要找到一种方法让宏计算每次需要添加到 Table1 的总行数,并添加所有的数据行。到目前为止,我编写的宏正确地将数据添加到 Table1,但只是第一行数据。此外,我希望数据在移动后自动从“RawData”作品中删除sheet。
我目前使用的代码是:
Dim ws As Worksheet
Dim newrow As ListRow
Dim inpt As Worksheet
Set ws = Worksheets("Transactions")
Set inpt = Worksheets("RawData")
Set newrow = ws.ListObjects("Table1").ListRows.Add
With newrow
.Range(1) = Range("A2")
.Range(2) = Range("B2")
.Range(3) = Range("C2")
.Range(4) = Range("D2")
.Range(5) = Range("E2")
.Range(6) = Range("F2")
End With
End Sub
我正在使用 Office 365。
非常感谢您的帮助。
您需要遍历数据行。类似于:
i = 2
Do until Range("A" & i).Value = ""
Set newrow = ws.ListObjects("Table1").ListRows.Add
With newrow
.Range(1) = Range("A" & i)
.Range(2) = Range("B" & i)
.Range(3) = Range("C" & i)
.Range(4) = Range("D" & i)
.Range(5) = Range("E" & i)
.Range(6) = Range("F" & i)
End With
i = i + 1
Loop