Excel精英培训网

 找回密码
 注册

QQ登录

只需一步,快速开始

你正在寻找更好的Excel学习教程吗?Excel技巧80集+数据透视表+函数初中高全套+VBA80集,想学的这儿全都有
查看: 366|回复: 10

[求助] 如何循环A-Z当超过26个字母时输出AA,AB,AC.....

[复制链接]
发表于 2017-12-3 22:45 | 显示全部楼层 |阅读模式
发表于 2017-12-3 23:31 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2017-12-4 09:13 | 显示全部楼层
本帖最后由 zjdh 于 2017-12-4 09:23 编辑

输入数字转换字母.rar (17.69 KB, 下载次数: 7)
回复 支持 反对

使用道具 举报

发表于 2017-12-4 09:53 | 显示全部楼层
Dim d
Sub Test()
    Dim n
    n = InputBox("", , 27)
    If n <> "" Then Call Dic: MsgBox f(n, 26)
End Sub

Private Sub Dic()
    Dim i
    Set d = CreateObject("scripting.dictionary")
    For i = 1 To 26
        d(i) = Chr(i + 64)
    Next i
End Sub

Function f(x, y)
    Do
        f = d((x Mod y)) & f
        x = x \ y
    Loop Until x = 0
End Function


回复 支持 反对

使用道具 举报

发表于 2017-12-4 10:00 | 显示全部楼层
输入数字转换字母(3位).rar (17.73 KB, 下载次数: 12)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-5 09:36 | 显示全部楼层

谢谢~!

怎么评最佳?
论坛改版了吗?
2017-12-05_093331.jpg
回复 支持 反对

使用道具 举报

发表于 2017-12-5 12:33 | 显示全部楼层
取单元格列号就行了。
回复 支持 反对

使用道具 举报

发表于 2017-12-5 22:38 | 显示全部楼层
大灰狼1976 发表于 2017-12-5 12:33
取单元格列号就行了。

向你学习一下,如何取?
回复 支持 反对

使用道具 举报

发表于 2017-12-6 09:19 | 显示全部楼层
zjdh 发表于 2017-12-5 22:38
向你学习一下,如何取?

Sub aaa()
Dim i&
For i = 1 To 100
  MsgBox Split(Cells(1, i).Address, "$")(1)
Next i
End Sub
回复 支持 反对

使用道具 举报

发表于 2017-12-6 09:44 | 显示全部楼层
大灰狼1976 发表于 2017-12-6 09:19
Sub aaa()
Dim i&
For i = 1 To 100

脑子僵住了,谢谢你!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2018-1-16 23:22 , Processed in 0.083803 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表