公式中表达单个双引号【"】和空值【""】的方法及说明
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>
单元格中输入的公式为
- =IF(A9,""""&"ExcelTip"&"""","")
复制代码
原始形式=IF(A9,""""&"ExcelTip"&"""","")
其中的两个红色部分分别代表呈现结果"ExcelTip"中对应的红色部分,两个文本部分再用&来连接;
这个公式简化后就变成了=IF(A9,"""ExcelTip""","")
即"作为普通文本连接文本ExcelTip时,不需要再用&;
现在我们用substitute函数来去除"ExcelTip"两端的引号
<ignore_js_op>
- =SUBSTITUTE(B9,"""","")
复制代码
公式=SUBSTITUTE(B9,"""","")中的红色部分就是要替换的双引号【"】,作为substitute的第2参数;
再来看下面这个,双引号用ASCII码表示是char(34),其实同理;
<ignore_js_op>
- =SUBSTITUTE(B9,CHAR(34),"")
复制代码
公式=SUBSTITUTE(B9,CHAR(34),"")的红色部分就是【"】,同上互证。
公式中表达单个双引号【"】和空值【""】的方法及说明的更多相关文章
- Java 处理json字符串value中多余的双引号
转: Java 处理json字符串value中多余的双引号 一.错误场景 json字符串的value值中有多余的双引号 1.直接上错误的json字符串 1 String errorJsonStr = ...
- PHP中使用单双引号的区别
1,双引号可以解析变量,单引号不可以解析: 2,双引号解析转义字符,单引号不解析转义,但是可以解析 \' 和 \\ ; 3,单双引号不能自己套自己,要嵌套使用,避免混乱: 4,单引号效率更高,能使 ...
- DB查询分析器访问EXCEL时,要在表名前后加上中括弧或双引号
1 引言 中国本土程序员马根峰推出的个人作品----万能数据库查询分析器,中文版本<DB 查询分析器>.英文版本<DB Query Analyzer>. 万能数据 ...
- PDM生成数据库-0设置表名和字段名中不带双引号
如果PDM直接导出脚本的话,所有的表和字段都会被加上双引号,非常不方便,去除双引号的办法: Database->Edit Current DBMS在弹出窗体中第一项General中找到 Scri ...
- python笔记22-literal_eval函数处理返回json中的单双引号
前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...
- C# 中如何输出双引号(转义字符的使用)
实现效果: 输出这样的一个含有双引号的字符串 "hello" 方式一: 不用 @ 时转义 System.Console.WriteLine("\"he ...
- Spark Mllib里如何删除每一条数据中所有的双引号“”(图文详解)
不多说,直接上干货! 具体,见 Hadoop+Spark大数据巨量分析与机器学习整合开发实战的第13章 使用决策树二元分类算法来预测分类StumbleUpon数据集
- python将字符串插入表中避免单双引号问题
调用pymysql.escape_string('向数据库插入的数据') 例如: import pymysql str = 'as"sdf' print(pymysql.escape_str ...
- Python中去除字符串中的单个或多个空格的方法总结
python中去除字符串中空格的方法比较多,单个看起来也都比较简单 但是使用起来容易发生混淆 为了加深记忆 将常用的去除字符串中空格的方法汇总如下 方法一:strip()方法 >>> ...
随机推荐
- 禁止复制操作 --《C++必知必会》条款32
class NoCopy{ private: //声明为私有的,则外部不可访问,即:不可复制 NoCopy(const NoCopy & );//复制构造函数 NoCopy & ope ...
- Session应用之验证码
package com.aeolia.view; import java.awt.Color; import java.awt.Font; import java.awt.image.Buffered ...
- Django:学习笔记(8)——文件上传
Django:学习笔记(8)——文件上传 文件上传前端处理 本模块使用到的前端Ajax库为Axio,其地址为GitHub官网. 关于文件上传 上传文件就是把客户端的文件发送给服务器端. 在常见情况(不 ...
- ruby中的预定义变量(Predifined Variables)
- Java StringBuffer 和 StringBuilder 类
当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类. 和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够 ...
- java第七天
p38~p41: 1.可以通过import 一个自定义类库(或者网上下的)在java中使用c风格的输入输出方式. 2.忘记优先顺序时应该用括号明确规定计算顺序. 3.java的操作符不同于c++,几乎 ...
- 五,动态库(dll)的封装与使用
在项目开发中,我们经常会使用到动态库(dll),要么是使用别人的动态库,要么是将功能函数封装为动态库给别人用.那么如何封装和使用动态库呢?以下内容为你讲解. 1.动态库的封装 以vs2010为例,我们 ...
- poj3071 Football(概率dp)
poj3071 Football 题意:有2^n支球队比赛,每次和相邻的球队踢,两两淘汰,给定任意两支球队相互踢赢的概率,求最后哪只球队最可能夺冠. 我们可以十分显然(大雾)地列出转移方程(设$f[ ...
- mysql导入source数据库
首先要确保数据库存在,如果不存在则创建 方法1 source 很智能,很方便,很快捷. # mysql -uroot -p Enter password: Welcome to the MySQL m ...
- QWebEngineView_CssVariables
1.测试代码,参考网址:http://blog.sina.com.cn/s/blog_1508519340102wgq0.html 2.测试下来,结果: 2.1.Qt5.6开始,没有 WebKit了. ...