Excel如何将输入模式更换为半角英数

在前文中的例子,输入单元格 A2的数值都是半角英数格式的。选择这一单元格时,输入模式默认为全角,输入的英文和数字也全部显示为全角状态,若要更改输入状态,就必须按Shift 键。这样稍微有些麻烦。如果可以在选中单元格 A2后,自动将输入模式切换为半角就方便多了。

另外,比如 A 列为姓名,B 列为电子邮箱地址,在制作这样的表格时,通常以全角形式在 A 列中输入姓名,然后切换成半角英数在 B 列中输入邮箱地址。这时,如果可以设置成在选中 B 列单元格后,自动切换为半角英数格式的话,就无需手动切换了,操作起来也会更加便捷。

具体操作顺序如下。

➊ 选择想要设定半角英数模式的单元格(整个 B 列)。

➋ 【数据有效性】➛点击【输入法模式】选项卡。

➌ 从【输入法模式】栏下拉菜单中选择【打开】,点击【确定】。

设置完毕后,只要选择了 B 列单元格,输入状态就会自动切换为半角英数模式。

即使在【输入法模式】栏中选择【关闭(英文模式)】,输入状态也会自动变为半角英数模式。但是这种情况下,在键盘上点击操作【半角/全角】键等,也可以将输入模式变为中文输入格式等。另一方面,如果这一操作无效时,只要不改变这一设定,就无法通过键盘改变输入状态。可能是为了增强“绝对不可以有半角英数之外的输入状态”这一限制,这一点我们要灵活运用。

Excel如何修改错误提示框

弹出警告提示的内容也可以修改。例如,弹出“请输入1~12的数字”这样的警告提示,对输入错误信息的人来说更容易理解。这样的考量对于顺利推进工作尤其重要。具体做法如下。

➊ 选择前文中设置有效性的单元格 A2,【数据】表栏➛点击【数据有效性】。

➋ 选择【出错警告】。

➌ 在【标】与【错误信息】中输入出错警告的内容,点击确定。

设置后,再次输入1~12之外的数值,就会显示这样的提示信息。

显示预先设定好的文字信息

显示预先设定好的文字信息

Excel框线全部统一为同一种类

在制作 Excel 表格时一定会用到框线。除常见的实线外,Excel 中还有虚线、粗线等框线。但考虑到操作效率,建议不要在表格中使用过多种类的框线,最好全部统一成实线。

像下面的例子,项目单元格框线用实线,而下面几行则用虚线,这样就会让表格看上去更清楚了,呈现突出重点的效果。

项目用实线,接下来用虚线的表格

虽然这个表格看起来用心设计了排版,实际上却并不会对工作结果带来任何好处。

另外,例如在单元格 D2中输入“数量×单价”的计算公式“=B2*C2”后,一直拖拽复制到 D 列最下方的单元格,那么单元格的格式也会被一并复制过去,好不容易设置的虚线框线就会都变成实线了。

原本虚线的框线都变成实线了

针对这种状况,有个方法可以在不复制格式的状态下复制公式。(选择格式粘贴功能,按下Ctrl +Enter ,在多个单元格中输入内容;右击的拖拽复制)。但是,使用这些功能将原本的框线设置为虚线,这多出来的2个步骤,并不会给提高工作效率带来实际的帮助。这样看,将表格中的框线都统一为实线的话,可以大幅提高工作效率。

表格的格式与工作成果并不存在因果关系。即便表格看上去很整齐,没有实际内容的话也是毫无意义。修饰表格可以放到后期的工作中,一定要先弄清工作中的优先顺序。

Excel如何从住址中区分省市与下级地方行政区

那么,在前文的表格中,如何在 C 列中提取除都道府县外的市町村等级别的数据呢?

在这一点上,还是“思考方法”最为重要,并且“思考有什么更简便的方法”也很重要。

我们需要事先了解 Excel 具体有何种类型的函数。即便不清楚,也应该思考“使用什么函数可以完成这项处理”?

首先,想从住址中提取都道府县的话,使用 LEFT 函数确定“从左开始抽取多少文字”。另一方面,想提取出市町村的话,就要考虑“从右开始提取多少文字”,此时使用 RIGHT 函数。

接下来的处理需要用到能够“计算单元格内字符数”的函数。这时我们要用到 LEN 函数。LEN 就是 Length(长度)的意思。通过以下公式,得出单元格 A1中的字符数。

=LEN(A1)

了解这个函数后就会获得好的想法。

在前文的例子中,A 列中有地址数据,旁边的 B 列中只提取出都道府县的数据。在这个状态下,想要在 C 列中提取都道府县以下的行政区的数据,就需要思考在 A 列中需要从右数提取多少字符。答案如下:

“从地址栏的字符数中减去都道府县栏的字符数,从 A 列中数据的右侧开始提取。”

可以利用以下公式实现这一点。从单元格 A2内右侧开始,提取单元格 A2的字符数减去单元格 B2字符数的字符数。

=RIGHT(A2,LEN(A2)-LEN(B2))

将这个公式输入单元格 C2,一直复制到数据最后一行,就可提取出所有地址中都道府县以下的地方行政区的数据。

在单元格 C2中输入=RIGHT(A2,LEN(A2)-LEN(B2)),一直复制到单元格 C12

Excel只从住址中选出特定地名(县、市、省等)

“住址如果是以都道府县为开头的文本,现在需要把都道府县与下级地址数据分开”。

这种操作是拆分字符串的基础。从根本上来说,为避免后期进行这样的操作,应该在制作工作表时“就将都道府县放入单独的单元格中”。但是,如果在原工作表中已经是同时出现在一个单元格中的状态的话就必须要拆分单元格了。这时,我们需要掌握如何将都道府县的数据单独提取到其他单元格中。

想要解决这个问题,仅仅熟知 Excel 中的功能和函数是不够的,重点在于以独立思考出多种处理方法。

首先,我们来思考这一问题“日本的47个都道府县名是什么类型的数据呢?”大多为3个或4个文字吧。

其中,4个字的只有“和歌山县”、“神奈川县”、“鹿儿岛县”这3个县。四个字的县名,每个都搭着“县”字,剩余全部都是3个字。

明白这一点,就能按照以下逻辑,从住址单元格中提取出都道府县的数据了。

“如果住址单元格中的第4字为‘县’,只抽选左数4个字符;(第4字不是‘县’)否则,只抽选左数3个字符”。

以上逻辑若转换为 Excel 函数,就是下面的公式。

=IF(MID(A2,4,1)=”县”,LEFT(A2,4),LEFT(A2,3))

复制粘贴含有这一公式的单元格,就能做到提取所有单元格中的都道府县名。

在单元格 B2中输入=IF(MID(A2,4,1)=”县”,LEFT(A2,4),LEFT(A2,3)),一直复制到单元格 B12

“第4字符为‘县’”这一条件,就是”从地址单元格的4个字中只提取1个字符的结果即为‘县’”,可以使用 MID 函数实现这一点。根据这一逻辑的判定真伪结果不同,用 LEFT 函数改变提取的字符数,并用 IF 函数指定操作。

Excel如何导出除周末和节假日外的营业天数

想要计算除双休日和节假日外距某个截止日期的营业天数,可以使用 NETWORKDAYS 函数。在一般的工作中,这种计算营业天数的案例十分常见。

由于 Excel 本身并不配备节假日的相关数据,因此我们在前期需要另外准备节假日一览表。在此制作一个以“节假日表”命名的工作表,然后照着下表制作一张节假日一览表。可以在网络上搜索节假日数据表。

节假日一览表

在单元格 A2中输入交货日期,想要计算出除去周末和节假日外距离该交货日期的工作日还剩几天时,只要用“当前日期”减掉“除周末和节假日外的截止日期”即可,公式如下:

=NETWORKDAYS(TODAY(),A2,节假日表!A2:A195)

此函数的参数表示意义如下:

  • 第一参数:日期计算的开始日
  • 第二参数:日期计算的结束日
  • 第三参数:需要从日期计算过程中去掉含有节假日的范围

这种方式可以得出“距离今天为止还有多少工作日”的结果,所以开始日期中要填入 TODAY 函数。

第三参数用于指定节假日,在这一例子中实际指定为“节假日表”中含有节假日日期数据的单元格范围(即 A2:A195)。如果要把公司自己规定的休息天数考虑进去的话,可根据需要自行调整第三参数。

经常更新工作表的日期(Excel自动当前日期)

“这份订单的制作日期怎么还是上一周啊!”

像订单这样的 Excel 表格,只是改变日期和内容来重复使用同一张工作表,经常会发生这种忘记更改相关项目的失误。为避免这样的情况发生,我们可以使用 TODAY 函数,自动将工作表的日期更新为当前日期。只要输入这个函数,之后就没有必要手动更新日期了。

=TODAY()

输入=TODAY()后显示的结果

=TODAY()后显示的结果

TODAY 函数在对截止交货期的天数、年龄、入社时间等需要自动计算的任务可以发挥很大的作用。如果要用 Excel 处理日期数据,熟练使用 TODAY 函数是我们最先需要掌握的技巧。

但是,在使用 TODAY 函数修改订单等工作表中的日期栏时必须注意一点,那就是 TODAY 函数会实时更新当天的日期。直接保存 Excel 制作的订单后,工作表中的日期会自动调整为当前日期。因此,需要保留原始数据时,请把文件转存成 PDF 形式。

Excel用SUMIF函数统计多个条件的方法

追加带有统计条件的“工作列”

SUMIF 函数和 COUNTIF 函数,都是用于计算符合条件的单元格的总和,以及单元格个数的函数。如果想使用这两种函数计算出2个条件以上的统计结果的话,我们需要稍微动一下脑筋。

比如下表,仅在单元格 H4中为 A 列负责人“吉田”、B 列商品代码为“A001”这个条件下,在 D 列中显示销售额数值。

SUMIF 函数第一参数只能指定1列。但在此表中,元数据中无法在1列中同时判定负责人和商品代码这2个条件。A 列只能判定负责人,B 列只能判定商品代码。

这时候,就需要“在元数据中追加作为新的统计条件的数据列”。这样的做法,通常被称为追加“工作列”或“计算单元格”。

我们来尝试添加结合负责人姓名和商品代码的数据列。具体操作如下。

➊ 在单元格 E4输入下列公式,并一直复制粘贴到数据最后一行。

=A4&B4

➋ 在单元格 H4输入下列公式:

=SUMIF($E:$E,$G4&H$3,$D:$D)

➌ 将单元格 H4中的公式复制至全表。

在这里,设置绝对引用也十分重要。利用指定 SUMIF 函数的参数指定各个单元格时,按几次F4 键就会像上面这样出现符号“$”。

然后,将最开始在 H4中输入的公式一直向右复制至 M 列,向下复制至第8行。这里,为使引用单元格不偏离正确的列和行,设定了绝对引用。

要重视简单易懂

在2007版本之后的 Excel 中,追加了复数条件下也能统计数据总和的 SUMIFS 函数和 COUNTIFS 函数。甚至像前文中的例子一样,不需要追加工作列也可以求和。但是,如果统计条件增多,参数的指定就会变得复杂,因此,需要追加工作列,分成几个步骤来处理。

另外,数组公式和 SUMPRODUCT 函数也可以用同样的方式处理,但就从简单易懂这点上来看,我还是推荐大家采用追加工作列这种方法来处理。

Excel不显示错误值的技巧

逐次修正错误会导致效率低下

在输入订单的明细栏、单价等数据时,只要输入商品 No.就可以同时显示商品名和单价。如果预先可以设置这样的机制,就能快速推进工作了。同时,还能避免人工输入造成的错误。我们在 B 列中输入只要在 A 列中输入商品 No.,就能显示相应的商品名称的 VLOOKUP 函数。

➊ 在单元格 B2中输入以下 VLOOKUP 函数:

=VLOOKUP($A2,$E:$G,2,0)

➋ 按回车键确定,并将公式一直复制粘贴到最后一行。

如图所示,单元格中会出现“#N/A”这样的错误值。这是由于函数公式中存在错误所误造成的。若是在单元格 A2中输入1,就会从负责商品栏中导出对应的商品名称。

在单元格 A2中输入1,显示商品名

总而言之,由于插入的是以商品 No.为检索值的函数,如果 A 列中皆为空白单元格,自然就会出现错误。

如果是仅在公司内部使用的工作表,这样也没什么问题。但是,如果是制作报价单或订单的话,要尽可能避免这种错误值的出现。但是,只是单纯删去单元格中的函数,再次使用时还是需要重新输入公式,这样非常没有效率。

如结果有误,则返回空白值

这一问题,可以运用处理“计算结果有误的话,返回空白值”的函数公式来解决。这时,我们会用到 IFERROR 函数(Excel 2007之后的版本中具备的函数)。

通常都是因为先输入基本公式后,才发现有可能会有错误,再进行隐藏错误的处理。因此,输入公式时就要嵌入先前提到的 VLOOKUP 函数。最终,单元格 B2中要输入以下公式:

=IFERROR(VLOOKUP($A2,$E:$G,2,0),””)

➊ 选择单元格 B2,按F2 键,使单元格处于可编辑状态

➋ 在等号(=)之后输入“i”后出现候选菜单,选择第2个“IFERROR”。

➌ 按TAB 键确定后,补充输入=IFERROR(。

➍ 完成公式后按回车键确定,并将公式一直复制粘贴到最后一行,就可以隐藏错误值。

➎ 在 A 列中输入商品 No.,会自动显示商品名与单价的数据。

IFERROR 函数第二参数中,连续输入了2个引号””,这是指定空白值的意思。

把 B 列的公式复制到 C 列,VLOOKUP 函数第三参数改为3。

IFERROR 函数的特点在于,第一参数指定的函数为错误值时,就会返回第二参数指定的值。在这个例子中,第二参数指定的是空白值,因此也就设定了“第一参数的 VLOOKUP 函数若为错误值,显示为空白结果”这样的机制。

如使用2003之前的 Excel 版本的话,应该怎么做

只有在 Excel 2007之后的版本才可以使用 IFERROR 函数隐藏错误值。如果你的 Excel 是2003版之前的,可以使用下面的公式:

=IF(ISERROR(公式),””,公式)

ISERROR 函数可以检查括号内指定的公式是否为错误值。如果是则为“真”,否则返回“伪”值。以此为基础来解读 IF 函数,便可知其处理过程是这样的:第一参数的逻辑式若为真,也就是说 ISERROR 函数结果为真,则返回第二参数的空白值,否则将继续处理公式。

是否能用VLOOKUP函数获得检索列左侧的数值?

VLOOKUP 函数下,无法取得检索列左侧的数值

VLOOKUP 函数可以说是 Excel 中最重要的函数,这里让我们再来看看其具体的公式和功能。

【公式】

=VLOOKUP(检索值,检索范围,列数,0)

【功能】

在检索范围最左一列中查找与检索值相同的单元格,然后在该单元格中返回第三参数指定的列数中的某个单元格的值。

“从检索范围的最左边的列返回到第三参数指定的列数中的某个单元格的值”,也就是“返回位于该列右侧的值”。

那么,问题就来了。

“难道无法直接用这一列左侧的数值吗?”

“给第三参数做减法导出数值就可以了吧?”或许有许多人都抱有这样的疑问。但答案是:“不可以”。

那么,如果想要获得位于检索列左侧的列中的数值,应该怎么办?

什么是 OFFSET 函数

组合使用 OFFSET 函数与 MATCH 函数可以解决前文中的问题。OFFSET 函数的本质是“确定作为基准的单元格,通过上下左右偏移得到新的区域的引用”。

【公式】

=OFFSET(基准单元格,偏移行数,偏移列数)

【功能】

是以基准单元格为起始,返回按移动行数、移动列数偏移的单元格的值。

偏移行数,正数表示向下,负数表示向上。

偏移列数,正数表示向右,负数表示向左。

首先,举个非常简单的例子。

➊ 在 Excel 工作表的单元格 C3中输入“100”。

➋ 将下列公式输入任意一个单元格。

=OFFSET(A1,2,2)

输入有上述公式的单元格,将返回“100”。

作为基准单元格的 A1,向下2行、向右2列的目标单元格是 C3(值为100)。所以输有此公式的单元格所返回的值就是100。

将 OFFSET 函数与 MATCH 函数组合

运用这个公式,想办法引用检索列左侧的单元格。

下列表格我们可以看到,按照单元格 E2的数字,在 F2、G2的“课程”和“单价”中会分别对应返回数据。首先,先在 E2里输入1。

首先,F2的“课程”十分简单,通常使用 VLOOKUP 函数就能处理。

=VLOOKUP(E2,B:C,2,0)

在单元格 F2中输入=VLOOKUP(E2,B:C,2,0)后取得“课程”数据

但是,单元格 G2的“单价”数据位于单价的检索列(B 列)的左侧,这样用 VLOOKUP 函数就无法处理了。

这时候,我们可以组合使用 MATCH 函数和 OFFSET 函数。为了导出 E2中“No.”所对应的单价数据,G2中要输入以下公式:

=OFFSET(B1,MATCH(E2,B:B,0)-1,-1)

在单元格 G2中输入=OFFSET(B1,MATCH(E2,B:B,0)-1,-1)

以单元格 B1为基准,作为第二参数的结果的数字向下、再向左移动1格的目标单元格数值将会出现在 G2中。

第二参数的 MATCH 函数,会查找单元格 E2的值位于 B 列的上数第几列。单元格 E2的值若为1,B 列内容为1的单元格位于第2行,因此 MATCH 函数导出结果为“2”。在这个例子中,以单元格 B1为基准的 OFFSET 函数直接嵌入 MATCH 函数中,由于 B1向下偏移数为2,产生了1格的误差,所以需要做出调整,在此基础上减去1。

在 OFFSET 函数中,可以将第二参数的移动行数、第三参数的移动列数指定为负数值。也就是说,可以引用位于基准单元格的上方、左侧的单元格。利用这一特性,可以解决 VLOOKUP 函数无法引用位于检索列左侧单元格的缺陷。