Excel VBA – 在特定的非默认(A1)位置创build表
如果您运行以下代码:
WorkSheet.ListObjects.add(SourceType:=xlSrcRange, Destination:=Range("A10:C13"))
有人可能会想,这会把桌子放在“A10:C13”的范围内。 它不是,一个表是插入到A1与一列和一行(不包括标题):
这个function在官方文档中有明确的说明:
如果SourceType设置为xlSrcRange,那么Destination参数将被忽略。
如何将表格插入其他任何单元格区域?
您正在将工作表范围定义添加到错误的参数中。
WorkSheet.ListObjects.add SourceType:=xlSrcRange, Source:=WorkSheet.Range("A10:C13")
有关该方法的完整说明,请参阅ListObjects.Add方法(Excel) 。
使用本页面提供的文档,我模拟了用户可能做什么来添加表格:
Range("A10:C13").Select WorkSheet.ListObjects.add(SourceType:=xlSrcRange)
看来joinselect语句会把表放到正确的位置。