gpt4 book ai didi

vba - 如何使用表 ListObject 而不是 "TableName"的 [[#Headers],[Column]] 表示法?

转载 作者:行者123 更新时间:2023-12-03 00:24:44 25 4
gpt4 key购买 nike

我正在尝试将录制的宏转换为通用 VBA 脚本(我的第一个脚本)。录制的宏在代码中生成特定名称,例如 Sheet8 和 Table5。我需要在代码中动态确定这些,到目前为止,我已经能够弄清楚......

'This table name needs to be dynamically determined...
Dim myTable As ListObject
Set myTable = ActiveSheet.ListObjects.Add(xlSrcRange, myRng, , xlNo)

但是我需要帮助弄清楚如何转换这些行...

Range("Table5[[#Headers],[Column1]]").Select

...使用 myTable ListObject 的内容。

有什么想法吗?谢谢!

最佳答案

试试这个:

Dim myTable As ListObject
Dim myRng As Range, rngH1 As Range
'where to place the table
Set myRng = ThisWorkbook.Worksheets("Sheet1").Range("D5:H10")
'create table
Set myTable = ActiveSheet.ListObjects.Add(xlSrcRange, myRng, , xlNo)
'get firts header
Set rngH1 = myTable.HeaderRowRange.Columns(1)
'select first header (assuming that Sheet where table placed is active)
rngH1.Select

如果你想使用它的名称来查找标题,你可以这样做:

'select header "Column3" (assuming that Sheet where table placed is active)
myTable.ListColumns("Column3").Range(1).Select

也可能很有趣:how to avoid using Select/Active statements

关于vba - 如何使用表 ListObject 而不是 "TableName"的 [[#Headers],[Column]] 表示法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22891093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com