【发布时间】:2016-07-16 03:56:43
【问题描述】:
我正在处理电子表格中的 300 多个命名范围,这些范围是每个单独的单元格,用于标识各个列。 (它们不是列名,因为有很多重复)
问题:如果我有一个命名范围是:
myRange = Range(cells(2,7).address)
活动单元格是
cells(5,7)
有没有办法识别我可以从活动单元格中的列号识别我与命名范围在同一列中的事实,并返回该命名范围的名称?
类似......
Function Get_RangeName(MyColumn) as string
For Each nm In ThisWorkbook.Names
if ***code to get coloumn number here*** = Mycolumn then
Get_RangeName = nm.name
end if
next nm
end function
我只是不知道如何从名称中获取列号
【问题讨论】:
-
Range(nm).Column 将返回名称包含在字符串变量 nm 中的范围的列号
-
@YowE3K - 如果命名范围涵盖多个列怎么办?
-
@Jeeped 每一个只有一列。这是一种权宜之计,在重新设计期间只会持续几个月。范围永远不会超过一个单元格。
-
@Jeeped 在这个问题中,每个命名范围都被称为一个单元格,因此它们不会跨越列。
-
@YowE3K - 是的,你是对的。我想我为提供更多普遍性所做的努力被误导了。