http://club.excelhome.net/thread-661904-1-1.html

有人问为什么不用三个双引号"""来表示单个双引号【"】呢,如果用三个双引号来表示的话,也就是""",那么Excel会很困惑,因为你给她出了一道难题,这个"""是"""呢还是"""呢还是"""呢?

Excel中的一个双引号【"】要用2个双引号来表示,即【""】;而4个双引号【""""】是表示空,即【""】;

是不是有点晕了,别急,听我道来:

在Excel的函数公式中,双引号【"】起到的是一个文本定界符的作用;结合附件中下图来说下:

<ignore_js_op>

比如B2单元格中输入【="ExcelTip"】,呈现出来的显示结果是ExcelTip,

<ignore_js_op>

再如在B3单元格中输入【="5"】,呈现出来的结果是5,也就是得到了一个文本型数值5;

<ignore_js_op>

接着,我们在B4单元格中输入【="""ExcelTip"】,呈现"ExcelTip;

<ignore_js_op>

在B5单元格中输入【="ExcelTip"""】,呈现ExcelTip";

<ignore_js_op>

在B6单元格中输入【="""ExcelTip"""】,呈现的是"ExcelTip"。

<ignore_js_op>

这是为什么呢?

因为Excel规定:公式中的一个双引号【"】要用两个连续双引号【""】来表示。与此同理呢,本来公式中的空值【""】是一对双引号,也就要用4个连续双引号【""""】来表示了。

为了更好的理解,明白了上面的例子,再来参见下例中实际公式中的应用;
我觉得结合substitute函数来理解这个知识点更容易有深刻的印象,引号【"】的ASCII码是34,可以用char(34)来表示,这样更为直观

目光请锁定B9单元格,看加上&捣乱后大家会不会晕:)

<ignore_js_op>

单元格中输入的公式为

  1. =IF(A9,""""&"ExcelTip"&"""","")

复制代码

原始形式=IF(A9,""""&"ExcelTip"&"""","")
其中的两个红色部分分别代表呈现结果"ExcelTip"中对应的红色部分,两个文本部分再用&来连接;
这个公式简化后就变成了=IF(A9,"""ExcelTip""","")
即"作为普通文本连接文本ExcelTip时,不需要再用&;

现在我们用substitute函数来去除"ExcelTip"两端的引号

<ignore_js_op>

  1. =SUBSTITUTE(B9,"""","")

复制代码

公式=SUBSTITUTE(B9,"""","")中的红色部分就是要替换的双引号【"】,作为substitute的第2参数;

再来看下面这个,双引号用ASCII码表示是char(34),其实同理;

<ignore_js_op>

  1. =SUBSTITUTE(B9,CHAR(34),"")

复制代码

公式=SUBSTITUTE(B9,CHAR(34),"")的红色部分就是【"】,同上互证。

公式中表达单个双引号【"】和空值【""】的方法及说明的更多相关文章

  1. Java 处理json字符串value中多余的双引号

    转: Java 处理json字符串value中多余的双引号 一.错误场景 json字符串的value值中有多余的双引号 1.直接上错误的json字符串 1 String errorJsonStr =  ...

  2. PHP中使用单双引号的区别

    1,双引号可以解析变量,单引号不可以解析: 2,双引号解析转义字符,单引号不解析转义,但是可以解析 \'  和  \\ ; 3,单双引号不能自己套自己,要嵌套使用,避免混乱: 4,单引号效率更高,能使 ...

  3. DB查询分析器访问EXCEL时,要在表名前后加上中括弧或双引号

    1     引言    中国本土程序员马根峰推出的个人作品----万能数据库查询分析器,中文版本<DB 查询分析器>.英文版本<DB Query Analyzer>. 万能数据 ...

  4. PDM生成数据库-0设置表名和字段名中不带双引号

    如果PDM直接导出脚本的话,所有的表和字段都会被加上双引号,非常不方便,去除双引号的办法: Database->Edit Current DBMS在弹出窗体中第一项General中找到 Scri ...

  5. python笔记22-literal_eval函数处理返回json中的单双引号

    前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...

  6. C# 中如何输出双引号(转义字符的使用)

    实现效果: 输出这样的一个含有双引号的字符串 "hello" 方式一: 不用 @ 时转义      System.Console.WriteLine("\"he ...

  7. Spark Mllib里如何删除每一条数据中所有的双引号“”(图文详解)

    不多说,直接上干货! 具体,见 Hadoop+Spark大数据巨量分析与机器学习整合开发实战的第13章 使用决策树二元分类算法来预测分类StumbleUpon数据集

  8. python将字符串插入表中避免单双引号问题

    调用pymysql.escape_string('向数据库插入的数据') 例如: import pymysql str = 'as"sdf' print(pymysql.escape_str ...

  9. Python中去除字符串中的单个或多个空格的方法总结

    python中去除字符串中空格的方法比较多,单个看起来也都比较简单 但是使用起来容易发生混淆 为了加深记忆 将常用的去除字符串中空格的方法汇总如下 方法一:strip()方法 >>> ...

随机推荐

  1. Java-idea-FindBugs字节码级别潜在bug查看

    一.概述 静态分析工具承诺无需开发人员费劲就能找出代码中已有的缺陷. FindBugs 不注重样式或者格式,它试图只寻找真正的缺陷或者潜在的性能问题. FindBugs 是一个静态分析工具,它检查类或 ...

  2. python之celery队列模块

    一.celery队列简介 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery. 1 ...

  3. 1 - bootstrap基本模板

    bootstrap 3.x 下载地址:http://v3.bootcss.com/ 基本模板如下: <!DOCTYPE html> <html lang="zh-cn&qu ...

  4. (20)Cocos2d-x中的引用计数(Reference Count)和自动释放池(AutoReleasePool)

    引用计数 引用计数是c/c++项目中一种古老的内存管理方式.当我8年前在研究一款名叫TCPMP的开源项目的时候,引用计数就已经有了. iOS SDK把这项计数封装到了NSAutoreleasePool ...

  5. SVD在餐馆菜肴推荐系统中的应用

    SVD在餐馆菜肴推荐系统中的应用 摘要:餐馆可以分为很多类别,比如中式.美式.日式等等.但是这些类别不一定够用,有的人喜欢混合类别.对用户对菜肴的点评数据进行分析,可以提取出区分菜品的真正因素,利用这 ...

  6. 探索C++虚函数在g++中的实现

    本文是我在追查一个诡异core问题的过程中收获的一点心得,把公司项目相关的背景和特定条件去掉后,仅取其中通用的C++虚函数实现部分知识记录于此. 在开始之前,原谅我先借用一张图黑一下C++: “无敌” ...

  7. linux第七章读书笔记

    Vim编辑器 Vim 仅仅通过键盘来在插入和执行命令等多种模式之间切换.这使得Vim可以不用进行菜单或者鼠标操作,并且最小化组合键的操作,对文字录入员或者程序员可以大大增强速度和效率. CHAPTER ...

  8. Linux服务器使用tar加密压缩文件

    使用tar命令进行加密压缩时需要和OpenSSL进行结合 加密压缩命令如下: tar -zcf - filename |openssl des3 -salt -k passwd | dd of=fil ...

  9. MyBatis基本工作原理

    Application是程序员开发的Java代码,蓝色为MyBatis框架. API是MyBatis提供的增删改查等功能接口. 老式SQL写法我们在Dao中写SQL: SELECT * FROM us ...

  10. js二进制转换十进制

    var a = 1010;alert(a.toString(2)); //转成二进制 alert(parseInt( "101110100 ",2)) ;//转成十进制 null