【发布时间】:2017-04-13 04:11:26
【问题描述】:
我需要获取我在 Excel 表中创建的逻辑列的字母。
当我点击一个单元格时,假设 H7,它有数据 23,我能够得到 Te excel 列 H,但出于某些商业目的,我想要 A,即第 5 行中对应于一个单元格的字母选择。如果假设是 56,我想要 B。
图 2 显示了为什么我想要 B 而不是 excel 列 I,这是因为如果我插入一个列,我的 excel 列字母会改变,但与 B 中的逻辑列字母对应的数字将仅保留在 B 中。 我可以使用代码获取 excel 列字母:
Public Function ColumnLetters(rInput As Range) As String
ColumnLetters = Split(rInput.Address, "$") (1)
End Function
如果提取的列字母是 H,我需要它下面第 5 行的值,即 A 等等。对于我,它是 B,等等。
我这样做是为了插入额外的列,excel 列字母会改变,但不会改变我的逻辑列字母。
有人可以帮忙吗?
【问题讨论】:
-
你能举个例子,它不会改变你的逻辑列字母吗?
-
我不明白你想要达到什么目的???
-
我想引用我的目标单元格列。所以我中的数据总是可以通过与 I 对应的第 5 行中的逻辑列字母来引用。即使我在 I 之前插入列并且 I 成为 J in excel 列,我的第 5 行字母 B 将完好无损。这就是为什么我试图获取我在第 5 行创建的列字母而不是 excel 列字母
-
我想添加一张图片,以便您可以更好地尝试一次,但我是新手,因为缺少徽章,我无法添加图片:(
-
让我明白。您对特定列的第 5 行感兴趣,例如 F,即使您添加一列(例如在 B 和 C 之间,这样您的 F 将变为 G)。如果是这种情况,您可以简单地NAME 列(在最左上角的字段中输入名称)。您还可以命名列的第一个单元格,然后计算该列中所需单元格的地址(间接引用)。您还可以从 NAME 中提取其字母或列号。