如何转换列号(如。127)放入EXCEL列(如。(Aa)如何在C#中将数字转换为Excel列名,而不使用自动从Excel直接获取值。Excel 2007的范围可能在1到16384之间,这是它支持的列数。得到的值应该以EXCEL列名的形式出现,例如A、AA、AAA等。
3 回答
qq_花开花谢_0
TA贡献1835条经验 获得超7个赞
=SUBSTITUTE(ADDRESS(1;colNum;4);"1";"")
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
函数式编程
TA贡献1807条经验 获得超9个赞
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))- 3 回答
- 0 关注
- 585 浏览
添加回答
举报
0/150
提交
取消
