从列“AA”开始,返回列号而不是数字

我正在使用=CHAR(COLUMN(A1)+96)

要返回列字母,这在上面的例子中是很好的。

但是,一旦列超出ZAA等列字母将不会正确返回。

我明白为什么,因为它已经达到了字母集的末尾,而且还有其他的字符。

是否有另一种方法来准确地返回列字母?

获取列字母的替代方法:

 =SUBSTITUTE(ADDRESS(1,COLUMN(A1)+26,4,1),1,"") 

但是,正如斯科特所指出的那样,根据需要,可能有更好的方法来实现您的最终目标。

要获得列字母使用这个:

 =LEFT(ADDRESS(1,COLUMN(A1),4,1),IF(ISNUMBER(--MID(ADDRESS(1,COLUMN(A1),4,1),2,1)),1,2)) 

如果你想以小写的方式:

 =LOWER(LEFT(ADDRESS(1,COLUMN(A1),4,1),IF(ISNUMBER(--MID(ADDRESS(1,COLUMN(A1),4,1),2,1)),1,2))) 

但正如我在我的评论中所说,如果你想在另一个公式中使用,有更快更好的方法。

我不知道你为什么要这样做,但这会为你得到它在这里引用的单元格是D1):

=MID(CELL("address",ASD1),2,FIND("$",RIGHT(CELL("address",ASD1),LEN(CELL("address",ASD1))-2)))