我只需要更改表格最后一行 + 2 行单元格的字体(“A:M”),但我不知道如何在 VBA 代码中写入它...我已经在下面的代码中写了最后一部分,但不幸的是错了
请提出任何建议
Sub Addnewrow()
Dim lo As ListObject
Dim newRow As ListRow
Dim cpyRng As Range
Set lo = Range("Data").ListObject
Set newRow = lo.ListRows.Add
With newRow
.Range(12).FillDown
With Range(LastRow + 2)
.Font.Size = 12
.Font.Name = "Tahoma"
.Font.Bold = True
End With
End Sub
不要使用“任何列表对象覆盖这个范围”()来引用表格,而是通过名称来引用表格,当您选择表格中的单元格时,可以在出现的“表格设计”
Set lo = Range("Data").ListObject
选项卡中找到该名称。我不确定您要用 做什么
.Range(12).FillDown
。如果表格包含公式,则在添加新行时它应该会自动将其复制下来。表中保存数据的部分称为,
DataBodyRange
因此您可以找到它的末尾,然后再偏移两行以获得表下方的两行。我不确定您想要实现什么,但在表格中添加一行,然后格式化表格下方从 A 到 M 的单元格。
不要使用嵌套的 With 子句。另外,您的代码中缺少 End With。
您需要指定完整的单元格引用。LastRow仅指示行号,而不指示单元格。尝试-
A
用您实际的列替换列。