精华内容
下载资源
问答
  • 需要输入两个双引号 ...则需要用VBA代码 range("A1").value = "=SUMIFS('a'!E:E,U:U,A5,B:B,""H"")" 可以看到最外面加了一对引号 文本内容中的单引号不需要处理 文本内容中的双引号一个变两个 ...

    需要输入两个双引号

    如想在单元格中输入

    =SUMIFS('a'!E:E,U:U,A5,B:B,"H")
    

    则需要用VBA代码

    range("A1").value = "=SUMIFS('a'!E:E,U:U,A5,B:B,""H"")"
    

    可以看到最外面加了一对引号
    文本内容中的单引号不需要处理
    文本内容中的双引号一个变两个

    展开全文
  • 1 "" 有转义规则 """ 相当于 " """" 相当于 " "内部的"" 内部其他" 显示结果为 内部的... chr(34) "双引号 chr(39) "单引号 chr(10) "换行 等同 vblf 3 \n 等 asc2码的转义好像不生效 ,很奇怪? S...

     

    1 "" 有转义规则

    • """ 相当于 "
    • """" 相当于 "
    • "内部的"" 内部其他"   显示结果为  内部的"内部其他

     

    2 符号常数生效

    • chr(32)    "空格
    • chr(34)    "双引号
    • chr(39)    "单引号
    • chr(10)     "换行  等同 vblf

     

     

     

    3 \n 等 asc2码的转义好像不生效 ,很奇怪?

     

    
    Sub test601()
    
    '引号转义生效
    Debug.Print "cocos"
    'Debug.Print ""; cocos; ""
    Debug.Print """cocos"""
    Debug.Print "/cocos/"
    Debug.Print ">>cocos"
    Debug.Print "cocos ""unity"
    Debug.Print """"
    
    
    Debug.Print
    
    
    '符号常数生效
    Debug.Print "helloWorld"
    Debug.Print "hello World"
    Debug.Print "hello chr(32) World"     '符号常数需要单独识别,不能放在""里
    Debug.Print "hello" & Chr(32) & "World"
    Debug.Print "cocos" & Chr(32) & "unity"
    Debug.Print Chr(34) & "cocos" & Chr(34) & Chr(32) & "unity"
    
    Debug.Print "hello" & vbCrLf & "world"
    Debug.Print "hello" & Chr(10) & "world"
    Debug.Print
    
    
    '反斜杠 \n -- \不生效?   \asc2码的转义在VBA内不生效?
    Debug.Print ("hello\nWorld")
    Debug.Print ("hello\\nWorld")
    Debug.Print ("hello" & "\n" & "World")
    Debug.Print ("hello" & "\\n" & "World")
    Debug.Print ("hello" & "/n" & "World")
    Debug.Print ("hello" & "//n" & "World")
    Debug.Print
    
    
    
    End Sub

     

     

    展开全文
  • VBA配对引号

    2021-09-06 21:41:38
    最近用百度AI接口识别了一本小说,扫描图片不是很清晰,结果识别出的...粗看了一下,基本上引号都在同一段落中,数量和位置差不多对,只是方向没有匹配好,像这种情况正是VBA大显身手的时候(如果引号位置或数量不对

    最近用百度AI接口识别了一本小说,扫描图片不是很清晰,结果识别出的引号方向大部分不对。就像下面这样:

    省略文字”被两个右引号括起来的文字”是一个勾心斗角,相互倾轧的旋涡,人与人之间的关系是一条赤裸裸的利害索链。作者感到压抑、苦闷、愤懑,他只有拿起沉重的笔,抒发心中的“被两个左引号封闭的文字“

    小说有112页A4纸,错误的引号数量没有计算,反正手工修改估计可以烦死两个人。粗看了一下,基本上引号都在同一段落中,数量和位置差不多对,只是方向没有匹配好,像这种情况正是VBA大显身手的时候(如果引号位置或数量不对,那VBA很难解决,因为VBA不知道引号该放在哪里,那得靠人工智能来分析自然语言),于是编出了以下代码:

    Sub 引号配对()
        Dim oRng As Range
        Dim oDoc As Document, aPara As Paragraph
        Dim iStart, iEnd As Long, needLeft, needRight As Boolean
        Set oDoc = Word.ActiveDocument
        
        Application.ScreenUpdating = False
        
        For Each aPara In oDoc.Paragraphs '一个个段落检查
            needLeft = True '可以有左引号
            needRight = False '不能来右引号
            iEnd = aPara.Range.End '段落末尾索引
            iStart = aPara.Range.start '段落开头索引
            For i = iStart To iEnd - 1
                Set oRng = oDoc.Range(i, i + 1) '逐字符遍历
                If oRng.Text = "“" Then '遇到左引号
                    If Not needLeft Then '不需要左引号
                        oRng.Text = "”" '改成右引号
                        needLeft = True '需要左引号
                        needRight = False '不再需要右引号
                    Else '需要左引号,不做修改
                        needRight = True '需要右引号配对
                        needLeft = False '不再需要左引号
                    End If
                ElseIf oRng.Text = "”" Then '遇到右引号
                    If Not needRight Then '不需要右引号
                        oRng.Text = "“" '改成左引号
                        needLeft = False '不再需要左引号
                        needRight = True '需要右引号
                    Else '需要右引号,不做修改
                        needLeft = True '需要左引号
                        needRight = False '不再需要右引号
                    End If
                End If
            Next
        Next
        
        Application.ScreenUpdating = True
        
    End Sub

    代码的逻辑注释很详尽,其中有个关键技巧:逐字符遍历段落内容。VBA中没有类似于遍历段落和词那样的for\,each结构用于逐个字符来遍历,这里先取得了段落开始和结尾的字符序号,再使用documentrange方法来取得字符。也许for\ each\ aWord\ in\ aPara.Range.Words这种遍历方式也可以实现上面程序的功能,但是为了记录下逐字符遍历的方法,就没有再试了。

    补充:如果先用查找和替换将所有的引号都改成直引号(如果替换后引号仍然是弯引号而不是直引号,那是因为中文版word默认将直引号自动修改为弯引号,需要在word选项的自动更正中将这一选项取消),再用单词(word)遍历的方式,代码可以简化:

    Sub 引号配对又一法()
        Dim aW As Word, needLeft, needRight As Boolean
        needLeft = True '需要左引号标志
        needRight = False '需要右引号标志,初始状态下可以有左引号,不能有右引号
        
        Application.ScreenUpdating = False
        
        For Each aW In ActiveDocument.Words
            If aW.Text = """" Then '遍历到直引号
                If needLeft Then '需要左引号
                    aW.Text = "“" '改成左引号
                    needLeft = False '不再需要左引号
                    needRight = True '需要右引号
                ElseIf needRight Then '需要右引号
                    aW.Text = "”" '改成右引号
                    needRight = False '不再需要右引号
                    needLeft = True '需要左引号
                End If
            End If
        Next
        
        Application.ScreenUpdating = True
        
    End Sub

    运行上面的宏,在我的word2021上出错。这应该是VBA解释器的bug,你不能把aW声明为Word(可能与Word代表这个Application的名称有关)。去掉这条声明语句即可运行成功,但如果是在严格模式下运行VBA,变量又需要预先声明,怎么办呢?经试验,aW声明为Word的父类Range的对象则无论是否严格模式都可以运行成功,即将上述代码第二行的声明语句改为:

    Dim aW As Range, needLeft, needRight As Boolean

    这段代码的技巧在于用两个直引号才能表示一个直引号。也就是在判断语句“If aW.Text = """" Then”中,等号后面要写4个直引号(""""),而不能是3个直引号("""),如果只用3个直引号,前面两个直引号优先匹配出一个空字符串,后面多了一个没有匹配的直引号,发生语法错误。用4个直引号,中间两个直引号发生转义变成一个直引号,首尾两个直引号表示字符串,于是产生了一个内容为直引号的字符串。

    展开全文
  • If Left(s, 1) = Chr(34) And Right(s, 1) = Chr(34) Then s = Mid(s, 2, Len(s) - 2) End If 转载于:https://www.cnblogs.com/onelikeone/p/10217377.html

    If Left(s, 1) = Chr(34) And Right(s, 1) = Chr(34) Then s = Mid(s, 2, Len(s) - 2) End If

    转载于:https://www.cnblogs.com/onelikeone/p/10217377.html

    展开全文
  • 每一种方法所产生的criteria参数应该如下列示例之一: "[LastName] = 'Smith'" –或者– "[LastName] = ""Smith""" 包含单引号 应该在criteria参数中包含单引号,这样在将变量值连接到字符串中时,它就会包含在单...
  • 本图以“XX规范为依据”。要把这句话赋值给textbox,用textbox.value=“本图以“XX规范为依据”。”但提示引号产生矛盾,如何解决?
  • excel如何在双引号里面引用变量

    千次阅读 2015-06-15 18:45:44
    1 说明   注意&的用法,"copy"输入copy字符串;"“"输入字符“;A1输入A1单元格值;"\"输入字符\;B1输入B1单元格值;...要注意的是标点符号“和”的输入不能用英文状态下的"来代替,否则会出错,就出在"\",因为...
  • VBA.Interior.ColorIndex.色谱及对应索引值,VBA编程经常会用到
  • js,html,vb中单引号和双引号的用法

    千次阅读 2012-11-16 18:09:22
    js、html中的单引号、双引号及其转义使用(转) 收藏   在js中对相关字符做判断或取值的时候很多情况下都会用到这些,也是我刚刚遇到的问题,通过参考下面的这篇文章,一切都解决了,摘抄下来做个笔记!呵呵... ---...
  • VBA_CRC.vb

    2020-04-24 16:52:06
    改部分代码实现了,将VBA某些反馈值的类型是字符串string,而字符串里的内容是数字,如果需要计算,就要将双引号去除来计算,本代码就是为解决这个问题的。
  • 要求:导出的csv文件,用文本工具打开时,文字内容需要有双引号,如下:"1","name1","name2","" 我之前的处理方式是excel的方式导出,发现很难做到这个效果。所以我换了一种方案,直接将内容处理后写入文件 首先...
  • 在文本中表示双引号(“) VBA具有强大的计算功能。除常规四则运算以外,还能够进行文本连接、乘幂运算、比较运算等。 文本连接 在VBA中,允许将多个文本通过文本连接符(&)进行连接并组合成新的文本,其基本...
  • VBA中的字符串需要使用双引号(“)来定界。单引号(')无法使用。 在大多数情况下,SQL中的字符串都可以使用。 SQL的ANSI标准指定它应该是单引号('),但是MS Access明智地决定更加灵活并支持两种引号类型。 这...
  • Vb中如何输入双引号,转义字符

    万次阅读 2018-05-18 22:29:23
    我们知道在C语言中输入转义字符可双引号可以通过 \就行了,但是在vb中就不可以,我的天毕设用vb写,真的好恶心,但是为了平平安安顺利毕业,只能硬着头皮写下去,遇到不会的问题只能现查了,这里总结一下:首先我们...
  • VBA基本语法整理

    千次阅读 2019-03-02 12:16:28
    VBA基本语法整理 作者:Zjmainstay 最近为了一个调货程序,边学边用,终于是写出来了一个Excel VBA程序,其中学会了不少使用方法,借此整理出来,希望能够给后来的新人有所帮助。 1. VBA 局部变量和全局变量 1....
  • 1、双引号嵌套双引号 #!/bin/bash a=aa echo "\"$a\"" #""双引号嵌套\"\"双引号 2、单引号嵌套单引号 #!/bin/bash a=aa echo \''$a'\' #\'\'单引号嵌套""单引号 3、根据要用,给不给变量 #!/bin/bash a='$c' b=...
  • 学习资源:《Excel VBA从入门到进阶》第72集 by兰色幻想这节课来详细讲解Select语句。Select 字段 from 表 where 条件例:从sheet1中筛选全部数据。* 表示全部字符,无条件可以省略where。Select * from [sheet1$]...
  • 加单引号、双引号和不加引号的区别 单引号: 可以说是所见即所得:即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就会输出什么。单引号''是全引用,被单引号括起的内容不管是...
  • 1 VBA和EXCEL使用符号常数有语法差别 1.1 语法差别 比如EXCEL里使用char(10) VBA中只能写成 chr(10) VBA的语法错误,VBE没有把第1个首字母大写就应该看出来 char(13) 是错误的 1.2 举例: chr(32) 类空格 ...
  • VBA知识:Like运算符详解

    万次阅读 2019-09-06 13:36:42
    "摘自Excel高级VBA编程宝典 Function IsLike(text As String, _  pattern As String) _  As Boolean  IsLike = text Like pattern End Function   如果文本字符串text与指定的模式pattern...
  • Vba菜鸟教程

    万次阅读 多人点赞 2020-05-02 18:21:15
    文章目录Vba菜鸟教程编辑器宏vba基本语法运算符变量语句简写语句sub语句调用语句退出语句分支语句循环语句判断语句公式与函数在单元格输入公式利用单元格公式返回值调用工作表函数利用vba函数自定义函数操作对象操作...
  • 微软的office软件允许用户自己编写,叫VBA的脚本来增加其灵活性,进一步扩充它的能力。如完打开word文件同时要打开某个文件的功能,必须要自己编写一段称之为宏的脚本。具体做法是在“工具”菜单“宏”-“宏”弹出...
  • VBA好比Excel的“遥控器”,Excel中每个菜单操作命令都对应一句VBA语句,当运行一段VBA语句时,Excel将按照相应顺序执行每句VBA语句,就像VBA在对Excel进行“遥控”一样,自动执行相应的操作。VBA的“遥控”不仅能使...
  • 引号: 可以说是所见即所得:即将单引号内的所有内容都原样输出,或者描述为单引号里面看到的是什么就会输出什么。 双引号: 把双引号内的所有内容都输出出来:如果内容中有命令(要反引下),变量,特殊转移符等...
  • Do While VBA.InStr(w.Cells(ridx, 5), " ") <> 0 '找不到才会等于0,找得到就不等于零 debug.Print org_email space = VBA.InStr(w.Cells(ridx, 5), " ") '找到现行字符串内空格的下标 L_part = VBA.Trim(VBA.Left...
  • 学习资源:《全民一起VBA基础篇(Excel数据处理)》 杨洋老师一. VBA界面操作​ 调出开发工具 依次点击“文件”->“选项”->“自定义功能区”,在右侧主选项卡下面的选项中,找到“开发工具”,在前面的小框打勾...
  • VB字符串中包含双引号处理

    千次阅读 2018-05-18 11:14:22
    字符串中包含双引号 在字符串处理时,如果字符串变量必须有引号,怎么处理呢?如 theStr = [MyName =“schunter”Class =“2”] 如何将此字符串显示出来呢? 很多初学者肯定使用了C / C ++的方法,“”“或者”...
  • #1楼 参考:https://stackoom.com/question/uLo/如何在Excel公式中创建包含双引号的字符串 #2楼 I use a function for this (if the workbook already has VBA). 为此,我使用了一个功能(如果工作簿已经具有VBA)...
  • 在检测行业经常会碰到这样的一种情况:客户,尤其是关键客户,希望每个月知道自己在第三方实验室做了多少份测试,每份测试报告做了哪些测试项目,每个测试项目的测试结果等等信息。...其实如果懂得使用excel的VBA

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,036
精华内容 814
关键字:

vba引号