字符串 生成a-z php,如何在excel中用函数或vba生成a-z的英文字母序列?
发布日期:2021-06-24 11:36:36 浏览次数:2 分类:技术文章

本文共 1480 字,大约阅读时间需要 4 分钟。

我们知道英文字母有a-z 26个。

今天本文将介绍如何用excel函数或vba生成各种英文字母序列,如下图所示:

一、在excel中用函数公式生成a-z的英文字母序列

如果要在excel单元格中生成a-z 的英文字母序列,可以使用excel函数CHAR。

在A1单元格中输入公式

Visual Basic

=CHAR(97)

1

=CHAR(97)

可以得到字母a。

在A2单元格中输入公式

Visual Basic

=CHAR(98)

1

=CHAR(98)

可以得到字母b。

依次类推,只要顺序增加Char函数的数字参数,即可获得a-z的26个英文字母序列。

为此可以在A1单元格中输入公式

Visual Basic

=CHAR(96+ROW())

1

=CHAR(96+ROW())

然后拖动填充柄即可获得26个英文字母a-z。

这里为什么是数字97获得字母a呢?

这是根据字符编码,数字97对应的字符按照字符编码规则对应的是小写的字母a。

同样的,按照字符编码规则,还可以找到大写的字母A对应的数字是65,因此在A1单元格中输入以下公式

Visual Basic

=CHAR(64+ROW())

1

=CHAR(64+ROW())

然后拖动填充柄即可获得26个大写的英文字母A-Z。

二、在excel中用vba生成a-z的英文字母序列。

以上介绍的是在excel中用函数生成的英文字母序列,在vba中也同样内置了类似的函数Chr。

比如要得到小写字母a,可以使用vba函数chr(97)返回。

要得到大写字母A,可以使用vba函数chr(65)返回。

三、用vba生成A-XFD的字母序列。

上述介绍的excel函数和vba方法都只能生成a-z的26个英文字母序列。

如果要生成更多的英文字母序列,比如A-XFD的英文字母序列,可以借组EXCEL的列标来实现。

从excel 2007版本开始,excel的列宽拓展到了16384列,相应的字母序列也从A-Z拓展到了A-XFD。

为了获得字母序列A-XFD,可以使用如下的vba自定义函数:

Visual Basic

Function GetA2XFD()

Dim oWK As Worksheet

Set oWK = Excel.ActiveSheet

Dim arr()

For i = 1 To 16384

With oWK

'获取单元格的地址

sAdd = .Cells(1, i).Address(True, False)

ReDim Preserve arr(i - 1)

'获取A-XFD的英文字母序列

arr(i - 1) = Split(sAdd, "$")(0)

End With

Next i

GetA2XFD = arr

Set oWK = Nothing

End Function

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

FunctionGetA2XFD()

DimoWKAsWorksheet

SetoWK=Excel.ActiveSheet

Dimarr()

Fori=1To16384

WithoWK

'获取单元格的地址

sAdd=.Cells(1,i).Address(True,False)

ReDimPreservearr(i-1)

'获取A-XFD的英文字母序列

arr(i-1)=Split(sAdd,"$")(0)

EndWith

Nexti

GetA2XFD=arr

SetoWK=Nothing

EndFunction

转载地址:https://blog.csdn.net/weixin_32541663/article/details/116080007 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:chinaz php 解密,PHP加密解密
下一篇:php中http错误码,php – 哪些HTTP响应代码是错误的?

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月26日 19时42分21秒