VBA字符串介绍,这篇就够了

2020-11-13 18:18:14 浏览数 (1)

这是《Excel VBA:办公自动化》教程的第8节,介绍字符串。

1.认识VBA:什么是VBA?

2.这些掌握了,你才敢说自己懂VBA

3.VBA变量5年踩坑吐血精华总结

4.VBA中重要的强制申明,谁看谁明白

5.VBA掌握循环结构,包你效率提高500倍

6.精通VBA分支结构,少写程序100行

7.VBA程序报错,用调试三法宝,bug不存在的

你可能会说:猴子,这个字符串的介绍应该不需要了吧,大家应该都懂。

我的天台式微笑还没上扬嘴角,基础不牢,地动山摇。

是的,所有语言的数据类型就那么几种,而字符串就是其中重要的一种,也是基础中的基础,值得我们好好研究。

1.什么是VBA字符串?

VBA字符串是一个字符序列,类似于Excel中的文本。

这个含义简单明了,我们可以等价理解为:VBA字符串就是多个字符连接起来。

2.VBA字符串特点

(1)VBA字符串用英文双引号括起来

比如上图用英文双引号括起来的「“富豪”」和「“超级富豪”」,这里特别强调是:英文双引号、英文双引号、英文双引号,否则VBA会批红色报错

有同学肯能会问了,猴子,为什么VBA里字符串要用英文双引号括起来呢?

请按小本本记下来,下面 这句话

就目前我接触的编程语言来看,字符串都是用英文引号括起来,注意是英文引号,不是英文双引号。因为有些语言兼容灵活性高,比如:python中的字符串用英文单引号、英文双引号括起来都行。用英文引号括起来的主要目的是为了对变量和字符串作出明确的区分,最大程度的降低程序出错概率。

那么最后一句话应该如何理解呢?举个小例子,你就能明白。

我们可以看到:

左边圈起来的「If Cells(1, 1) = “富豪” Then」会被VBA翻译为:如果单元格A1的值等于字符串「富豪」,那么就执行后面的语句。

右边圈起来的「If Cells(1, 1) = 富豪 Then」会被VBA翻译为:如果单元格A1的值等于变量「富豪」,而由上文知「富豪 = 10」,那么句代码就变为单元格A1的值等于10,那么就执行后面的语句。

很明显,添加英文引号前后的代码逻辑意思千差万别,因为一个代表字符串,另一个代表变量。

(2)字符串区分大小写

我们前面说过VBA中的变量大小写不敏感,即:变量Aa = 1 和变量 aA = 10会被认为是同一个变量被赋不同的值。但是,大家要记得字符串是区分大小写的。

(3)纯数字和文本数字二者不等价

大家听到这些叫法似乎有点懵,我第一次听到也和你们一样完全懵圈,心想这是傻X吗,数字就数字,还分什么纯数字和文本数字?

非也,非也!各位看官切莫着急,且听奴家一一道来。

纯数字就是我们日常我们所理解的那些数字,能够直接进行加减乘除运算的数字,比如1、2、3等。

文本数字,大家可以理解为字符串数字,就是把上面的纯数字用英文引号括起来,那么它有了一个新的身份——文本数字,也就是字符串数字。

我们知道,纯数字可以进行加减乘除运算,那么文本数字可以进行吗?

回答:Yes。

我们可以看到,文本数字相加的符号是「&」,即:字符串连字符,主要用于将多个字符或字符串连接起来,形成新的字符串。至于,字符串有没有其他诸如减乘除的运算操作,由于这块工作中基本不涉及,而且也没有想明白字符串的乘除会涉及哪些使用场景,所以没有查询相关资料进行研究。当然了,看文章的同学们,如果有兴趣研究,可以在自己研究后,将自己的研究成果在留言区和我们大家分享。

(4)特殊字符使用要额外注意

特殊字符,又是一个让人懵圈的词汇。

其实,也没有那么复杂,我们常见的3大特殊字符,比如:空格、回车、换行

[备注]

图片中引用了「chr()」函数,这块大家查一下就知道怎么用了,知道这里的「chr(10)」表示换行操作就行了

(5)字符串可以有多个,也可以一个都没有

在VBA字符串中,字符串可以是

这种包含有具体内容的字符串,也存在那种什么都没有,

仅有2个英文双引号的字符串,他们通常被我们称为「空串」。另外,我们要注意区分一字之差的「空串」和「空格串」的区别。

3.总结

所谓VBA字符串就是多个字符连接起来。

VBA字符串有以下特点:

(1)VBA字符串用英文双引号括起来

(2)字符串区分大小写

(3)纯数字和文本数字二者不等价

(4)特殊字符使用要额外注意

(5)字符串可以有多个,也可以一个都没有

好了,今天的分享就到这里了。

推荐:人工智能时代的必学技能

0 人点赞