Excel 英文名专家信息统计

外国人名统计的时候因为其姓名方面比较混乱,往往在如何称呼上容易出错,现在需要对其信息进行统计,即将专家的名称分为三个部分,并根据性别输出称呼,下面通过具体步骤来详细介绍如何对专家信息进行统计。

步骤1:输入高校专家信息,如图11-65所示。

步骤2:将名从全名中分离出来,在单元格C2中输入“=LEFT(A2,FIND(””,A2)-1)”,然后按Enter键,得到相应的专家名,如图11-66所示。在此公式中利用FIND函数查找第一个空格,然后返回空格前面的部分。

图11-65 原始数据

图11-66 “名”的提取

步骤3:选择单元格C2,拖动填充柄完成对单元格C3:C6的自动填充,结果如图11-67所示。

步骤4:对姓进行提取,在单元格E2中输入“=RIGHT(A2,LEN(A2)-FIND(”!”,SUBSTITUTE(A2,””,”!”,LEN(A2)-LEN(SUBSTITUTE(A2,””,””)))))”,然后按Enter键,得到的结果就是外国专家的姓,如图11-68所示。

步骤5:选择单元格D2,拖动填充柄,完成对其他专家姓的提取,结果如图11-69所示。

步骤6:通过性别输出称呼,在单元格E2中输入“=IF(B2=”男”,CONCATENATE(D2,”先生”),CONCATENATE(D2,”女士”))”,然后按Enter键,结果如图11-70所示。

图11-67 自动填充后的结果

图11-68 “姓”的提取

图11-69 自动填充后的结果

图11-70 中间名的提取

步骤7:选择单元格E2,拖动填充柄,完成对E3:E6的自动填充,最终结果如图11-71所示。

图11-71 最终结果

Excel 提取表格中的姓名:INDEX函数

如果需要提取表格中的姓名,可使用INDEX函数实现。假设学生资料表中奇数行用来存放学号,偶数行用来存放姓名,现在需要单独提取学生姓名,具体操作如下。

01 打开学生资料表,在奇数行输入学生的学号,偶数行输入学生的姓名。

02 选中要显示学生姓名的单元格,在其中输入公式:=INDEX(B:B,ROW()*2)&””,按下“Enter”键确认。

03 使用填充柄功能将公式复制到该列中的其他单元格中,即可提取学生资料表中的所有学生姓名。

alt

Excel 如何快速提取有规律的数据?

图4.258中A列的职员信息包含了职员的姓名、所在车间及工号,现要求提取其中的姓名,有什么方法快速提取所有姓名?

图4.258 职员信息表

解题步骤

由于姓名在职员信息中有比较强的规律性,因此可以借助Excel自带的快速填充完成需求,具体步骤如下。

1.在E2单元格输入“张邦民”。

2.将鼠标指向 E2 的右下角,指针变成黑色十字形时,右键按下指针向下填充,当填充到F7单元格时松开右键。

3.在弹出的右键菜单中选择“快速填充”,Excel会根据“张邦民”在A2单元格中的位置和特征分析A3:A7区域中对应的姓名,然后将姓名填充到E3:F7区域中。图4.259和图4.260分别是调用快速填充的界面及填充结果。

图4.259 调用快速填充菜单

图4.260 填充结果

知识扩展

1.快速填充工具是Excel 2013开始添加进来的工具,以往的版本中无法使用。

2.本例中A列的职员信息有较明显的规律,如姓名前面都有“车间”二字,姓名后面全是字母,因此Excel可以按照这个规律去提取所有姓名,假设将数据按图4.261所示的方式修改,姓名右方全是汉字,Excel 就无法再准确地提取出姓名来。假设仍然采用相同的方式执行填充,那么填充结果将会出错,效果如图4.262所示。

图4.261 修改后的职员信息

图4.262 填充结果

3.快速填充工具比较智能,年、月、日这样的字符也可以正确地提取出来。例如,图4.263中,A1包含了年、月、日,而且月与日的长度并不相同,但是在A1单元格输入“12月”然后向下填充时,Excel总能根据规则准确地提取出对应的字符。

图4.263 从字符串中提取月份

Excel 如何从杂乱字符串中提取数字?

单元格中包含字母、汉字和数值,是否可以将其中的数字单独提取出来?

解题步骤

以图4.166所示的数据为例,人工提取每个单元格中的数字是相当费时费力的,借助Word的查找工具可以快捷地选中这些数字,然后将它们复制到Excel中。

图4.166 待提取数字的数据源

1.选择A2:A9区域,按组合键<Ctrl+C>复制数据。

2.打开Word,然后按组合键<Ctrl+V>粘贴数据。

3.按组合键<Ctrl+H>,弹出“查找和替换”对话框。

4.将查找内容设置为“[!0-9.]”,然后单击“更多”按钮,选择下方的“使用通配符”复选框,最后单击“全部替换”按钮。图4.167是设置界面,图4.168则是替换结果。

图4.167 设置查找选项

图4.168 替换结果

5.按组合键<Ctrl+A>全选所有数字,再按<Ctrl+C>复制数据,然后返回Excel中,选择B2单元格并按组合键<Ctrl+V>粘贴数据,图4.169为粘贴结果。

图4.169 将Word中的查找结果复制到Excel中

知识扩展

1.在前面的案例中讲过,Excel的查找工具不支持正则表达式,而Word是支持的,因此对于复杂的查找和替换都转到Word中执行,然后将结果回传到Excel中。

本例中代码“[!0-9.]”的含义是排除所有数字和小数点。其中“[0-9.]”表示数字或小数点,叹号则表示不等于/排除,因此整体的含义是将数字以外的字符替换成空白,剩下数字。

2.本例的方法只针对一个单元格中只有一串数字的情况,如果一个单元格中有两串或更多数字,则要使用更复杂的方法。

Excel 能否只提取括号中的值?

图4.156中C列的括号中注明了奖惩的原因,现要求单独将原因提取出来放在D列中,手工复制效率低,能否一次性全部提取出来?

图4.156 需要提取括号中的值的报表

解题步骤

Excel的公式可以提取括号中的值,但是学习公式远比学习基本技巧复杂,因此本例展示使用基础技巧功能提取括号中的值,具体步骤如下。

1.复制C2:C9区域的值。

2.打开Word,按下组合键<Ctrl+V>粘贴数据。

3.按组合键<Ctrl+H>,弹出“查找和替换”对话框。

4.打开“查找”选项卡,将查找内容设置为“\(*\)”,然后单击“更多”按钮从而显示其他选项。

5.选择“使用通配符”复选框,然后单击“在以下项中查找”按钮,并选择“主文档”,表示在主文档中选择符合条件“\(*\)”的所有目标字符。设置界面如图4.157所示,而选择目标字符串后的效果如图4.158所示。

图4.157 设置查找选项

图4.158 查找结果

6.按下组合键<Ctrl+C>,复制Word中选中的目标字符,然后返回Excel界面。7.单击D2单元格,然后按组合键<Ctrl+V>粘贴数据,图4.159为粘贴结果。

图4.159 粘贴Word中选中的数据

8.关闭Word,然后在Excel中选择D列,按组合键<Ctrl+H>,弹出“查找和替换”对话框。

9.将查找内容设置为左括号“(”,要注意必须和单元格中的左括号一致,半角的括号和全角的括号属于两个不同的字符,无法匹配成功。将替换内容保持空白不变,然后单击“全部替换”。图4.160是设置界面及替换结果。

图4.160 将左括号替换成空文本

10.用同样的方法将右括号“)”也替换成空文本。

11.在D1单元格中输入标题“奖惩原因”,并对D1:D9区域添加边框,最终效果如图4.161所示。

图4.161 添加标题和边框

知识扩展

1.在Excel中可以查找“\(*\)”,但是Excel做不到只选择符合条件的字符串,而是选择整个单元格,因此只能将数据复制到Word中,然后借助Word的查找工具提取出括号中的值(包含括号本身)。最后将取出的值回写到Excel中并消除括号。

2.“\(*\)”表示括号及括号中的值,由于括号(半角状态的)本身属于特殊字符,有特定的含义,因此查找括号时应该使用“\”去除它的特殊属性,从而得到字符本身。

3.本例将带括号的字符串从Word中复制到Excel后再替换掉括号,事实上也可以在Word中选中目标后立即替换掉括号,然后再复制到Excel中来,在效率上两者相近。

Excel 如何提取一列数据的唯一值?

图4.98中C列中的值是比赛项目,由于存在多人参加相同项目的问题,因此有些项目重复出现。现要求在E列罗列出所有比赛项目,不允许有重复值。

解题步骤

Excel从2007版开始提供了一个“删除重复项”工具,用于提取行中的唯一值,如果是Excel 2003,则只能通过公式或筛选来完成。本例展示“删除重复项”的应用,具体操作步骤如下。

1.选择C2:C13区域,按组合键<Ctrl+C>复制。

2.选择E2单元格,然后按Enter键粘贴数据。

3.单击功能区的“数据”→“删除重复项”,弹出如图4.99所示的“删除重复项”对话框。

图4.99 “删除重复项”对话框

4.单击“确定”按钮保存设置,同时执行删除重复项,Excel 会弹出图 4.100 所示的提示信息,通知用户删除了多少个重复值和保留了多少个唯一值,图4.101则是删除重复值后的效果。

图4.100 提示删除数量和剩余项目数量

图4.101 唯一值

知识扩展

1.删除重复项功能不是从数据源中提取唯一值并存放在其他地方,而是直接在原始区域中删除重复出现的值,高级筛选工具才可以提取选区唯一值到其他的区域。

为了不破坏数据源,本例在操作时先将数据复制到其他区域,然后再删除重复项。如果不想复制数据,要直接提取唯一值,那么应该采用高级筛选工具,操作方式为:单击数据区域以外的空白单元格(如 K1),然后单击功能区的“数据”→“高级”,弹出如图 4.102 所示的“高级筛选”对话框,在对话框中按图4.103所示的方式设置筛选参数,当单击“确定”按钮后能得到图4.104所示的筛选结果。

图4.102 高级筛选对话框

图4.103 设置筛选参数

图4.104 筛选结果

2.删除重复项工具支持单列重复和多列重复的判断,本例处理的是单列重复项,多列重复指的是多列数据都同时相同才算重复,如果部分数据相同则不会删除。

在图4.105中,“姓名”、“地区”和“参赛项目”复选框都选择表示3列同时重复才删除,因此尽管有3个长沙,有3个田径,有2个铅球,但是真正重复的只有第5行和第13行,姓名、地区和参赛项目同时重复才删除,因此执行结果是删除第13行,其他数据保留。

图4.105 删除多列重复项

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。

Excel 实战:英文人名的姓、名称呼提取

某高校聘请了几位外国教授进行短期讲学,因为其姓名方面比较混乱,现在需要对其信息进行统计,即将专家的名称分为3部分,并根据性别输出称呼。下面通过具体步骤来详细介绍如何对专家信息进行统计。

STEP01:新建一个空白工作簿,重命名为“专家信息统计表”,切换至“Sheet1”工作表,并输入原始数据,如图12-63所示。

图12-63 原始数据

STEP02:将“名”从全名中分离出来,在C2单元格中输入公式“=LEFT(A2,FIND(” “,A2)-1)”,然后按“Enter”键返回即可得到相应的专家名,如图12-64所示。在此公式中利用FIND函数查找第1个空格,然后返回空格前面的部分。

STEP03:选中C2单元格,使用填充柄工具向下复制公式至C6单元格,完成对C3:C6单元格区域的自动填充,结果如图12-65所示。

STEP04:对“姓”进行提取,在D2单元格中输入公式“=RIGHT(A2,LEN(A2)-FIND(“!”,SUBSTITUTE(A2,” “,”!”,LEN(A2)-LEN(SUBSTITUTE(A2,” “,””)))))”,然后按“Enter”键返回,得到的结果就是外国专家的姓,如图12-66所示。

STEP05:选中D2单元格,使用填充柄工具向下复制公式至D6单元格,完成对D3:D6单元格区域的自动填充,结果如图12-67所示。

STEP06:通过性别输出称呼,在E2单元格中输入公式“=IF(B2=”男”,CONCATENATE(D2,”先生”),CONCATENATE(D2,”女士”))”,然后按“Enter”键返回即可得出称呼,结果如图12-68所示。

STEP07:选中E2单元格,使用填充柄工具向下复制公式至E6单元格,完成对E3:E6单元格区域的自动填充,最终结果如图12-69所示。

英文“名”的提取

图12-64 “名”的提取

图12-65 自动填充后的结果

英文“姓”的提取

图12-66 “姓”的提取

图12-67 D列填充结果

图12-68 通过性别输出称呼

图12-69 最终结果

Excel 函数实战:从身份证种提取公司员工出生日期

打开“员工信息表.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图12-56所示。某办公人员需要从该工作表中提取公司员工的出生日期,以便计算工龄。下面通过具体的操作步骤来详细讲解该综合应用案例。

从身份证号种提取生日

图12-56 原始数据

一般来说,身份证号码的第7位~14位数字为出生日期,可以先用MID函数返回身份证号码中出生日期数值,再使用TEXT函数把出生日期数值转换成数值文本格式,最后使用REPLACEB函数替换出生年份,得出具体的出生日期。

STEP01:选中B2单元格,在编辑栏中输入公式“=MID(A2,7,8)”,然后按“Enter”键即可返回数值“19831004”,如图12-57所示。

STEP02:选中B2单元格,利用填充柄工具向下复制公式至B20单元格,即可返回所有出生日期的数值,如图12-58所示。

返回出生日期数值

图12-57 返回出生日期数值

从身份证号种返回所有出生日期的数值

图12-58 返回所有出生日期的数值

STEP03:选中C2单元格,在编辑栏中输入公式“=TEXT(B2,”0000-00-00″)”函数,按“Enter”键即可返回“1983-10-04”数值文本,如图12-59所示。

STEP04:选中C2单元格,利用填充柄工具向下复制公式至C20单元格,即可返回所有出生日期的文本,如图12-60所示。

图12-59 返回出生日期文本

图12-60 返回所有出生日期文本

STEP05:选中D2单元格,在编辑栏中输入公式“=REPLACEB(C2,1,5,” “)”函数,按“Enter”键即可返回出生日文本“10-04”,如图12-61所示。

STEP06:选中D2单元格,利用填充柄工具向下复制公式至D20单元格,即可返回所有出生日文本,如图12-62所示。

图12-61 返回出生具体日期

图12-62 返回所有出生日文本

Excel如何提取单元格内容中空格的前后两部分

运用连字符“&”可以合并字符串,但是要拆分字符串多少有点复杂。例如,像下面这样用半角空格隔开姓氏和名字的情况下,怎样才能把姓氏和名字分别提取到不同单元格中呢?

姓氏与名字以半角空格隔开的数据

这种情况下,如有半角空格等形式的“分隔文字”(将空格视为1个字符),其实也能做到把空格前后的数据提取到不同单元格中。我们来看一下操作顺序。

➊ 提取姓氏

首先提取姓氏数据。提取单元格中的姓氏就是说“从左开始提取多少单元格内的字符串中的字符”,这里要用到 LEFT 函数。问题在于如何提取指定的字符数。

这里,我们需要知道“分隔文字是第几个字”。例如,单元格 A2中的“吉田拳”,其分隔文字是半角空格,是第3个字符。接下来,用3减去1可以得出2,也就是说从左开始抽取2个字符即可得到姓氏。换句话说就是这样:

“分隔文字为第几个字符,用这一数字减去1所得到的数字,就是需要从字符串左边开始提取的字符数。”

公式如下:

=LEFT(A2,FIND(” “,A2)-1)

接下来,要注意如何在第二参数中使用 FIND 函数。这是用于定位指定文字在单元格内的位置的函数。

并且,这样连续输入两个引号(””)则表示“空白”,如果在双引号之间加入半角空格(” “),则表示“半角空格”。

将这一公式输入进单元格 B2,就可以在 B2中提取单元格 A2中的半角空格之前的字符,在这里就是姓氏数据。

在单元格 B2中输入=LEFT(A2,FIND(” “,A2)-1)

我们既然已经知道分隔文字的半角空格是第3个字符,那么要想提取姓氏,需要从字符串左侧开始应该提取的字符就是3减1,即两个。这样,就能够只提取出“吉田”这两个字,也就是位于字符串最左侧的两个字符。

➋ 提取名字

接下来,我们来提取名字。这次需要从右开始提取,所以要用到 RIGHT 函数。问题在于应该如何设定“从右侧开始提取的字符数”。我们可用下面的函数公式处理。

=RIGHT(A2,LEN(A2)-FIND(” “,A2))

在单元格 C2中输入=RIGHT(A2,LEN(A2)-FIND(” “,A2))

在 RIGHT 函数的第二参数中,使用 LEN 函数和 FIND 函数指定了需要提取的字符数。“用单元格 A2的字符数减去单元格 A2中半角空格所在第几个文字后得到的数字”,按照这样的方式进行计算。在这个例子中,单元格 A2的字符数是4(半角空格也算作1个字符)。

半角空格是第3个文字,所以4-3=1。在单元格 A2的右侧开始提取1个文字,即半角空格之后的字符,也就是提取出名字。

接下来,将公式复制到下面几行,就能进行同样处理了。

将公式复制到其他单元格

但是,这种处理方式,如果遇到没有空格的情况(此例中,姓氏与名字之间没有半角空格)就无法使用了。最初在输入数据时的操作会给后续的操作带来影响,因此需要谨慎考虑。原则上来说,最好的办法就是“尽量做细致划分”。后面可根据实际情况再行合并单元格或字符串。

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