看好需求是数值并非数字,由于数字有可能是文本格式的数字;详细的操作步骤:【数据】->【数据验证】按钮,这里须要把稳的是,【数据验证】按钮是分高下两部分的,上部分点击直接弹出【数据验证对话框】,下半部分点击会弹出数据验证的下拉菜单,选择数据验证命令也会弹出数据验证对话框,在【设置】选项卡中为我们供应了涉及数值的所有情形,比如整数,小数,日期,韶光等;
数据验证的许可选项
看到这四个选项,哪么问题来了,我们知道日期和韶光本身便是整数和小数的数值,为什么还要增加的日期和韶光,是不是可以推测出验证选项不只区分数据,还区分单元格的格式呢?我们会在之后的操作中验证这个问题!
回看需求,必须为数值就只有整数和小数两个选项了,整数常日用于物品的数量,以个,匹,科,棵,头,只等为单位你就选”整数”,而小数的运用就广泛多了:比如以重量,金额,%,功率,温度,长度等单位类型的物品或属性上,一样平常就要选”小数”了,这里要解释2个问题,
选择”整数”我们还是可以输入1.00这样数值,这就解释验证的检测的单元格末了打算的结果;
选择任意一项,在【数据(D)】选择任意逻辑关系后,且”小数”的范围值可为整数;
整数选项对应的逻辑关系有哪些
哪如果都选”小数”会有什么不好影响吗?
在日常的利用中,我们不难创造,Excel在数据类型上采取了弱类型的设计,也便是在Excel的天下里,根本就没有整数这个理念,所有的数值都是采取了浮点型(始终带有小数部分)存储,为了看起来整数,是经由了取整操作,而如果验证办法选”小数”后,就有可能会忽略部分的取整操作,会导致运算中有偏差,虽然很小很小,但一旦带入多层级运算,就会导致类似景象预报中下雨亲睦天这样两种完备不同的结果并且这个结果并可以预测。(详解Excel根本知识-微软都无法修复MOD中的BUG,我们该怎么做)。
自带的选项确实能帮我们省去设计的韶光,单它的功能也相对单一并不能知足我们日常的需求,接下来就须要我们自己设计验证规则了,【许可(A)】选【自定义】选项,接下来我们就来盘盘它。
需求:支持输入为数值,不管是不是数值格式 (技巧等级:中级)
当我们选择【自定义】介于选项为灰色,输入项变为【公式】,在录入框支持常量和公式的录入,而验证判断的标准是你录入内容终极返回结果是真还是假,结果为真的常量有数值≠0,逻辑值的TURE,其它的的文本,0,false结果都为假;这个知识点会在之后用到,公式的录入知识有两点:
公式通用勾引符号“=”函数附加的勾引符号“@”;公式也分常量,函数,表达式,当前的需求须要用到表达式作为函数参数利用,利用数学运算符负号(-)、加减0和乘除1来讲文本数值转化成数值,再用数值判断函数来判断;详细操作如下:
选择要利用验证单元格的范围或整列,点击【数据】选项卡下的数据验证按钮,弹出的【数据验证】弹窗,【许可(A)】选择“自定义”选项,然后在“公式(F)”输入=isnumber(--c1)、=isnumber(c11)、=isnumber(c1/1)、=isnumber(c1+0)或@isnumber(c1-0);
解释:至于在输入框中的表达式或函数输入哪个单元格须要看选择范围后,当前激活的单元格为哪个(白色单元格)!
配置数据验证公式的步骤
如果你的录入的单元格设置了这样的验证,必须在编写函数运算公式的时候引用这些单元格打算的时候,必须先做文本数值转数值的操作,否则会导致运算的末了的结果禁绝确,由于函数求和或其他运算时,文本数值会被看做0 带入打算的!
需求:最大限度的担保手机号的精确性 (技巧等级:高等)
要做好这个功能,必须先思考一个问题,什么样的数字才能称为手机号呢?也可以说手机号有什么独占的特色呢?你总结的特色越多,这个功能完造诣越高,然后将特色转为表达式便是验证输入的内容啦。
及格特色:
1.长度为11,2.第1个数字为1,3.第2位数不可能为0,1,2;(注:三个特色来自手机号段信息汇总)
如果用数据验证明现这三个方面的限定,在手机号码的验证上就算合格了;三个特色转为公式为:特色1:len(d1)=11,特色2:left(d1,1)1=1; 特色3;mid(d1,2,1)1 > 2,三者的逻辑是且关系,也便是三个特色都必须知足的情形才算是手机号;要实现3条件的且的逻辑,我们常日会想到用if函数来完成,公式=if(len(d1)=11,if(len(d1)1=1,if(mid(d1,2,1)1>2,ture,false),false),false),你也可以通过数学的办法来,比较表达式返回TURE和FALSE,再数学表达式中转为1和0,而数值0可以转化为逻辑值FALSE,非零的数值则为TURE;用数学表达式编写公式为:=(len(d1)=11)( left(d1,1)1=1)( mid(d1,2,1)1 > 2);这两种的办法你更喜好哪种呢?
详细操作步骤:d列为手机号输入列,选择整列,然后调出【数据验证】窗口,选【自定义】并在公式录入框输入上面编写的If或数学表达式公式中的任意一个,点确定。
为什么这样做才只能算及格呢?
上述的方法从对应的位数上是否涌现的数字作为检测标椎,确实能达到过滤部分的输错的可能,但相称一部分的数据通过这种方法是无法避免输错的,而实际的可以确认的号段也就40多个,而且上述方法组合70种组合,每一种会增加上亿个缺点可能性,而且一旦号段有所增加,须要重新汇总数据规律,重理逻辑,再编写公式,相称繁琐;接下来我们就一起玩一下满分的做法!
(设计思想:重配置,轻逻辑,易掩护,可扩展性高)
满分特色:1.长度为11,2.前三位号码段,3.4-7位为地区编号;
实现步骤:新建配置事情表,名称配置信息;然后在网上找到号段信息,填入到配置信息表第一行表格中,通过统计截取录入手机号的前三位涌现的次数,为0则输入缺点,为1则通过特色2的判断,公式为=COUNTIF(配置信息!$1:$1,LEFT(Sheet1!D1,3))再乘上(len(d1)=11) (isnumber(d11))便是填入【数据验证】窗口的完全公式了,一旦有新增号段,只需填入新的号码段就行,再用同样的方法增加地区编码验证就能满分了!
虽然这样做能满分,但它的实际体验并不好,于是我就做了改良,将部分的验证公式改用条件格式来做,同事反馈体验良好。
操作步骤:选中d列,点击【开始】菜单中的【条件格式】按钮,在弹出的下拉菜单中,选【新建规则】,在【新建规则窗口】中选择【利用公式确定要设置的单元格】,输入=COUNTIF(配置信息!$1:$1,LEFT(Sheet1!D1,3))=0,点击格式按钮,设置赤色字体并加粗,点确定;
条件格式实现操作步骤
然后将数据验证修正的公式修正成=(len(d1)=11)(isnumber(d11)),手机为11位数字这个必须的,至于号段或手机号录入错触发的概率太高了,这样只需标注出来,提到提醒的浸染就可以了!
把稳:【数据验证】当公式返回结果为false的时候弹出错误提示,而【条件格式】则是公式的结果为TRUE时利用自定义的格式,以是两者的公式不能通用,是不是眼尖你的早就创造!
接着一起盘一下【数据验证】弹窗的其它三个选项卡:
【输入信息】浸染:提示解释,当鼠标单击有数据验证的单元格,会弹出提示信息;实用性:确实在输入有一定的提示浸染而大量的同事抱怨在录入时,非常碍眼,后去掉,补充做法:表格右侧空缺地方增加提示信息区域或直接将输入录入解释制作成单独文件下发给同事;
输入信息的操作界面以及对应的显示位置
【出错警告】浸染:当录入者输入缺点时,会弹出提示缺点,实用性:由于输入缺点不一定是人为,误操作导致的,不论怎么输入一贯提示缺点,后来让我过去看看,原来是设置了文本格式,这种方法也并是太好用!
出错警告操作界面以及显示位置
【输入法模式】浸染:让输入法自动切换为英文输入或中文输入,我的环境:windows8.1系统,office 2016,只有QQ输入法,设置完成后,不能起到任何浸染!
输入法模式的操作界面
办理方法:须要在掌握面板-措辞-添加措辞-英语,由于只有一个输入法,是不能知足【输入法模式】开启的条件的!
,还须要修正被QQ输入法中英文切换占用的【ctrl+空格】快捷键为其它,经由这些操作之后才能开启功能!
输入法模式无效的办理方法示意图
实用性:如果一个功能依赖的条件太多,肯定不发遍及和推广,由于大部分对系统配置操作不是太理解,虽然它的功能上有益录入中英文的数据效率,不过我觉的还是用输入法自带shift切换来的更直接有效!
你以为呢?
在文章的末了须要解释一点:任何的强大的功能都有缺点,数据验证的缺陷便是它会阻断录入过程,但有些阻断是必要的,有些阻断了就会给录入造成很大麻烦,以是我们在利用【数据验证】的时候,须要把稳有些对付数据准确性哀求不是很严格的数据,利用【条件格式】这种有识别的格式就好,不是所有的场景都适宜利用,比如数据验证并不能浸染于设置之前已有的数据;文末彩蛋:我们可以用来限定他人修正已有的数据,只需在自定义的公式中输入0或FALSE,不论别人输入什么都会弹出错误提示!
通过这个例子想见告你,只要我们平时多思考,多用创造的眼力不雅观察,缺陷也是有它的用武之地的,好了本日就先写到这了,如果对你有所帮助记得关注我啊,我是爱极客的小胖子!