例如:将字符串小李说:"你好"
赋值给变量Str
,如果按照以下写法肯定是不对的
Str ="小李说:"你好""
上边将代码表示为 字符串:小李说
、变量:你好
和空字符串""
放在一起,这样编译器会报错。
字符串若想输出双引号,需要将字符串变量中的双引号"
修改为成对的双引号""
即可,可以将以上代码修改为
Str = "小李说:""你好"""
或者写成多个相连的字符串使用&
连起来
Str = "小李说:"& """" & "你好"&""""
这样编译的结果Str就能输出
小李说:"你好"
以上可以解决字符串中存在双引号"
的问题,但是多个单引号连在一起时代码可读性就非常差了。
基于第二种写法,下边使用VBA中的ASCII码的双引号Chr(34)
来代替字符串中的双引号"
可以先将赋值字符串放在一边,如下
小李说:"你好"
使用替换命令将字符中的双引号"
用字段" & chr(34) &"
替代掉,这样代码就写成
小李说:" & Chr(34) & "你好" & Chr(34) & "
然后将上边的语句两头加上双引号"
赋值给Str
写成
Str = "小李说:" & Chr(34) & "你好" & Chr(34) & ""
编译的结果也是正确的。
这样去除两头的双引号,每有一个" & chr(34) &"
便代表了一个双引号,这样在查找错误时容易发现问题。
以上,在向其它程序中注入VB代码时会用到。