如何转换VBA中列的字母和数字表示方法

时间:2024-10-15 21:36:20

1、将字母表示的列转为数字的方法:假设列标为x,则相应的数字表示的列column值应该为:range(x &1).column

如何转换VBA中列的字母和数字表示方法

2、例如,例标为r,即r列,则range(r&1).column=18。

3、将数字表示的列转化为字母的方法:例如第v列,用字母表示是多少列呢?公式为:= VBA.Mid(Cells(1, v).Address, 2, Application.WorksheetFunction.Find("$", Cells(1, v).Address, 2) - 2) 可以在单元格中试好再写,不过,vba中函数有自己的表示方法。

如何转换VBA中列的字母和数字表示方法

4、原理:首先利用cells().address返回单元格的地址,得到的地址是$R$1这种文本格式,然后在得到的单元格地址内找出第二个$符号开始的位置,即Application.WorksheetFunction.Find("$", Cells(1, 18).Address, 2),这个值减去2,则是字元格中字母的长度。最后,用vba.mid()函数将字母取出来。

5、另外,可以使用substitute()函数来操作,这种方法比较巧妙,比如第V列的公式为:= Application.Substitute(Address(1, v, 4), 1, "")

6、如果网友们有更好,更简便的办法,请告诉我。非常感谢。

© 手抄报圈