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. 禁止复制操作 --《C++必知必会》条款32

    class NoCopy{ private: //声明为私有的,则外部不可访问,即:不可复制 NoCopy(const NoCopy & );//复制构造函数 NoCopy & ope ...

  2. Session应用之验证码

    package com.aeolia.view; import java.awt.Color; import java.awt.Font; import java.awt.image.Buffered ...

  3. Django:学习笔记(8)——文件上传

    Django:学习笔记(8)——文件上传 文件上传前端处理 本模块使用到的前端Ajax库为Axio,其地址为GitHub官网. 关于文件上传 上传文件就是把客户端的文件发送给服务器端. 在常见情况(不 ...

  4. ruby中的预定义变量(Predifined Variables)

  5. Java StringBuffer 和 StringBuilder 类

    当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类. 和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够 ...

  6. java第七天

    p38~p41: 1.可以通过import 一个自定义类库(或者网上下的)在java中使用c风格的输入输出方式. 2.忘记优先顺序时应该用括号明确规定计算顺序. 3.java的操作符不同于c++,几乎 ...

  7. 五,动态库(dll)的封装与使用

    在项目开发中,我们经常会使用到动态库(dll),要么是使用别人的动态库,要么是将功能函数封装为动态库给别人用.那么如何封装和使用动态库呢?以下内容为你讲解. 1.动态库的封装 以vs2010为例,我们 ...

  8. poj3071 Football(概率dp)

    poj3071 Football 题意:有2^n支球队比赛,每次和相邻的球队踢,两两淘汰,给定任意两支球队相互踢赢的概率,求最后哪只球队最可能夺冠. 我们可以十分显然(大雾)地列出转移方程(设$f[ ...

  9. mysql导入source数据库

    首先要确保数据库存在,如果不存在则创建 方法1 source 很智能,很方便,很快捷. # mysql -uroot -p Enter password: Welcome to the MySQL m ...

  10. QWebEngineView_CssVariables

    1.测试代码,参考网址:http://blog.sina.com.cn/s/blog_1508519340102wgq0.html 2.测试下来,结果: 2.1.Qt5.6开始,没有 WebKit了. ...