为了账号安全,请及时绑定邮箱和手机立即绑定

如何转换列号(如。127)放入EXCEL列(如。(Aa)

如何转换列号(如。127)放入EXCEL列(如。(Aa)

C#
GCT1015 2019-06-14 11:12:26
如何转换列号(如。127)放入EXCEL列(如。(Aa)如何在C#中将数字转换为Excel列名,而不使用自动从Excel直接获取值。Excel 2007的范围可能在1到16384之间,这是它支持的列数。得到的值应该以EXCEL列名的形式出现,例如A、AA、AAA等。

3 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

如果有人需要在没有VBA的Excel中这样做,下面是一种方法:

=SUBSTITUTE(ADDRESS(1;colNum;4);"1";"")

其中colNum是列号。

在VBA:

Function GetColumnName(colNum As Integer) As String
    Dim d As Integer
    Dim m As Integer
    Dim name As String
    d = colNum
    name = ""
    Do While (d > 0)
        m = (d - 1) Mod 26
        name = Chr(65 + m) + name
        d = Int((d - m) / 26)
    Loop
    GetColumnName = nameEnd Function


查看完整回答
反对 回复 2019-06-14
?
函数式编程

TA贡献1807条经验 获得超9个赞

对不起,这是Python而不是C#,但至少结果是正确的:

def ColIdxToXlName(idx):
    if idx < 1:
        raise ValueError("Index is too small")
    result = ""
    while True:
        if idx > 26:
            idx, r = divmod(idx - 1, 26)
            result = chr(r + ord('A')) + result        else:
            return chr(idx + ord('A') - 1) + resultfor i in xrange(1, 1024):
    print "%4d : %s" % (i, ColIdxToXlName(i))


查看完整回答
反对 回复 2019-06-14

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号