如何将Excel工作表中第一个listobject的范围设置为variables?

我在Excel中有一个macros,用来修改和处理表中的数据。 我正试图在表格中减less它的影响。 当我需要search表格时,我的macros显式地引用了表名,有时还引用了特定的表头,如下所示:

Range("productUpdate[id]")

我希望我的macros能够处理与特定条件不匹配的表。 我想我可以分配一个variables的名称,但我不知道得到我需要的数据。 我将如何做到这一点?

我的查找信息的标准是:

  • 表的名字可以是任何东西。
  • 第一列标题可以被命名为任何东西。
  • 该表总是将成为工作表中的第一个表/列表对象。

假设我正确理解你的问题,你可以引用一个variables到工作表中的第一个表格,如下所示:

 Sub Testit() Dim tbl As ListObject Set tbl = Sheet1.ListObjects(1) End Sub 

从那里,你可以根据需要引用表格属性。 示例如下:

 MsgBox tbl.Name MsgBox tbl.ListColumns.Count MsgBox tbl.ListColumns(2).Name 

你可以使用string连接。 Range(tblN & "[" & colN & "]")其中tblNcolN是带有表名和列名的stringvariables。