EXCEL VBA 字母转换

比如单元格A列是DGUYZKCOIQ转换成B列EHVZALDPJR即新的字母是原来字母向后移动一个,按26个字母的顺序,如果到Z,就从头取A不知哪位有方法... 比如单元格A列是DGU
YZKC
OIQ
转换成B列 EHV
ZALD
PJR
即新的字母是原来字母向后移动一个,按26个字母的顺序,如果到Z,就从头取A
不知哪位有方法
展开
 我来答
解0人
推荐于2016-06-09 · TA获得超过2391个赞
知道大有可为答主
回答量:1474
采纳率:83%
帮助的人:894万
展开全部
Function ttt(s$)
Dim a() As Byte, ns$
    a = s
    For i = 0 To UBound(a) Step 2
        a(i) = IIf(a(i) = 90, 65, IIf(a(i) = 122, 97, a(i) + 1))
        ns = ns + Chr(a(i))
    Next
    ttt = ns
End Function

例:ttt("DGU")="EHV"

把以上函数写在模块里,可以在excel中档函数使用,比如B1写:=ttt(A1),下拉复制公式即可

或者自己再写vba循环调用上面的方法填写B列

cfzzj007
2015-10-22 · TA获得超过5373个赞
知道大有可为答主
回答量:7931
采纳率:78%
帮助的人:2035万
展开全部
遍历每个单元格中所有字符,用Asc函数取得数值,加1,再用Chr函数转为字符。
追问
我是低手,需要语句,还有Z怎么办
追答
Z当然用If判断一下了,等一下,有时间,我写给你。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式