【问题标题】:Excel VBA column header instead of column numberExcel VBA 列标题而不是列号
【发布时间】:2017-03-29 00:34:19
【问题描述】:

我在 Excel 中有一个表格,在 VBA 中有这段代码:

If TableName(Y, 1) = "Dog" Then

这很好用,它会查找第一列的值并检查它是否 = "Animal" 但是我不想使用(Y,1),而是想通过声明列标题而不是列号来做到这一点,例如:(Y,[AnimalHeader]),但这不起作用,有人知道这是可能的吗?怎么样?

【问题讨论】:

  • 命名范围怎么样?
  • 是的,这可能是一种方式,但我很惊讶我可以像在电子表格中一样引用标题名称
  • 抱歉,这可能不是您想要的,因为您使用的是表格。但是,获取列的函数怎么样,这样您就可以使用 (Y, fetchColumn(Animal))
  • TableName ListObject 变量的名称还是什么?
  • Y 是什么?请提供更多上下文。

标签: vba excel


【解决方案1】:

我不认为你不能直接到达那里,但这很接近:

Dim lo as Excel.ListObject

Set lo =  Ws.ListObjects("TableName")
If lo.ListColumns("Animal").DataBodyRange(Y) = "Dog" Then ...

【讨论】:

  • 这正是我想要的,谢谢!
猜你喜欢
  • 2015-11-07
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 1970-01-01
  • 2018-01-15
  • 2012-07-27
  • 2018-05-04
  • 2017-05-21
相关资源
最近更新 更多