使用 =COLUMN 函数从表中返回列号

Gem*_*lop 3 excel vba

我在 Excel 中有以下函数,它根据列标题返回表的列号。该表称为 Config,表列标题为 value。下面将返回给我Excel中的列号。

=COLUMN(Config[Value])-COLUMN(Config)+1
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何在 VBA 中使用它?我希望我可以使用类似的东西...

Application.WorksheetFunction.Column
Run Code Online (Sandbox Code Playgroud)

但似乎Column不适合我使用。

有人对此有什么想法吗?任何帮助将不胜感激。

Big*_*Ben 7

由于您使用的是表 ( ),因此您可以通过表头ListObject引用 a 。ListColumn如果您需要列号,您可以使用ListColumn.Range.Column- 像这样的东西。

Option Explicit

Sub Test()
    Dim lc As ListColumn
    Dim col As Long

    Set lc = Sheets("Sheet1").ListObjects("Table1").ListColumns("Data1")
    col = lc.Range.Column
    Debug.Print col
End Sub
Run Code Online (Sandbox Code Playgroud)