Excel 批量插入签名图片到指定位置

图10.54所示的工资表中每一页末尾都有合计行与签名行,其中制表人的签名采用图10.54中右上角的图片,而非在单元格中输入姓名。

每一页末尾的“制表:”右方都需要插入该图片,有没有办法一次性将图片插入到所有的目标单元格中呢?

图10.54 工资明细及签名图

解题步骤

当图片的尺寸小于等于单元格或区域的尺寸时,复制单元格或区域时可以将图片一起复制,基于此前提,将图片放到第一个签名处,调整好大小与位置后复制到其他签名处即可,具体操作步骤如下。

1.将图片移动到 H48 单元格,然后将图片的高度调到小于等于 H48 单元格的高度,此时签名效果如图10.55所示。

图10.55 设置第一个签名

2.选择H48:I48区域,然后按组合键<Ctrl+C>复制单元格。

3.按组合键<Ctrl+A>全选所有单元格,然后按组合键<Ctrl+F>,弹出“查找和替换”对话框,将“查找内容”设置为“制表”,然后单击“查找全部”按钮,Excel会在下方罗列出所有找到的目标单元格地址,查找结果如图10.56所示。

图10.56 查找所有符合条件的单元格

4.按组合键<Ctrl+A>,选择所有找到的目标单元格,然后关闭对话框。

5.按组合键<Ctrl+V>粘贴数据。由于所有包含“制表”的单元格都处于选中状态,因此粘贴时会在所有“制表”所在单元格的右方生成签名图片,效果如图10.57所示。

图10.57 通过粘贴批量插入签名图片

知识扩展

1.要确保复制区域时将图片一并复制,必须选择“Excel选项”对话框中的“将插入对象与其父对象单元格一起剪切、复制和排序”复选框。

此选项默认处于选中状态,选项位置如图10.58所示。

图10.58 允许复制单元格时也一并复制图片

2.需要在工作表中大量使用图片时,图片一定要调到100KB以下再插入,对于本例这种签名尺寸的图片,在20KB以下即可。

Excel 根据单元格中的名称批量插入图片

图10.38所示的工作表中有29个图片名称,而在图10.39所示的“E:\服装图片”路径下则有对应的29张图片。有没有办法把每个单元格中的图片名称所对应的图片一次性插入到右边的单元格中,同时统一图片宽度和高度呢?

图10.38 工作表中的图片名称

图10.39 磁盘中的图片

解题步骤

Excel允许批量插入图片,但是无能力按指定位置插入且统一所有图片的高度和宽度,因此本例借用网页代码辅助工具来实现此需求,具体操作步骤如下。

1.由于图片较大,不可能按图片的原来大小显示在单元格中,因此需要按比例缩小图片。通常图片的高度调为“80”比较适合查看,因此在B2单元格输入以下公式:

整 句 公 式 的 作 用 是 生 成 一 句 网 页 代 码 “<table><img src="E:\服 装 图 片\a-001.jpg"height="80">”,此代码可以引用E盘下“服装图片”文件夹中的图片“a-001.jpg”,而且引用图片时自动调整其高度为80。

2.双击 B2 单元格的填充柄,将公式向下填充到最后一个非空行,公式会为每一个图片名称生成一句网页代码,效果如图10.40所示。

图10.40 网页代码

3.复制B2:B29区域的值。

4.在任意文件夹中的空白区域单击右键,然后依次单击右键菜单的“新建”→“文本文档”。

5.双击打开新建的文本文档,然后按组合键<Ctrl+V>粘贴网页代码。

6.在文本文档中按下组合键<Ctrl+A>全选所有字符,再按下组合键<Ctrl+C>复制文本。

7.返回工作表界面,选择B2单元格后按下组合键<Ctrl+V>粘贴网页代码,在粘贴网页代码时,Excel会将网页代码转换成代码所引用的图片,效果如图10.41所示。

8.选择第2行到第30行,然后将单元格行高调整为80像素,使行高等于图片的高度,效果如图10.42所示。

图10.41 粘贴网页代码时自动引用图片

图10.42 将行高调整为80像素

9.调整B列的列宽,使其等于图片的宽度。

知识扩展

1.代码“<table><img src="E:\服装图片\a-001.jpg"height="80">”中的“<table>”代表列表,这句代码能让图片以列表的形式出现,每个图片都插入到代码所在单元格的位置。如果删除“<table>”,则插入图片后图片会凌乱排列在工作表中,需要人工调整位置。

2.网页代码“<img src=…>”代表引用指定位置的图片,img代表图片,src则是英文单词source的缩写,代表图片的路径,因此在等号后面赋值为图片路径即可引用图片。

3.网页代码中的img支持src、height和width等参数,height代表图片高度,width代表图片宽度,通常只需要指定高度即可,在Excel中插入图片后图片的宽度会随高度的变化而相应地变化,图片比例总是保持不变。

4.单元格的行高有两个单位,一是磅,显示在左边;二是像素,显示在右方括号中,在调整行高时只需要查看右方的像素值即可。

图片的高度和宽度都以像素为单位。

5.测试本例代码时,一定要注意图片的路径和公式中的路径一致,否则无法导入图片。当图片移动位置后,公式也需要相应地修改。

Excel 2016怎么批量修改B列所有图片尺寸大小?

图4.253中B、D、F等3列都存放了若干图片,其中B列的图片尺寸不正确,导致图片溢出单元格。是否有办法只调整B列的图片大小,其他单元格的图片保持当前大小不变?

图4.253 B列的图片需要调整

解题步骤

Excel提供了一个图片选择工具,可以选择一个区域内的所有图片,忽略其他图片。选中目标图片后从“格式”选项卡中指定高度或宽度即可,具体步骤如下。

1.单击功能区的“开始”→“查找和选择”→“选择对象”,此时鼠标指针由,表示当前处于选择图形对象的状态。

2.在需要选择的第一个图片左上方按下鼠标左键,然后向右下角拖动,直到覆盖最后一个需要选择的图片时松开鼠标。图4.254是鼠标指针处于选择状态下的效果,而图4.255则是松开鼠标后的效果。

图4.254 利用对象选择器选择图片

图4.255 选中效果

3.打开功能区的“格式”选项卡,然后单击右上方的高度调整按钮,其中下箭头表示减小,上箭头表示增加,操作界面如图4.256所示。

图4.256 调整图片的高度

每单击一次下箭头可以下调0.1厘米,在调整高度的同时需要目测图片的高度,调到适应单元格的高度时停止。最终效果如图4.257所示。

图4.257 批量调整图片高度的结果

知识扩展

1.批量选择图片有两个方法:其一是用本案例中演示的使用鼠标选择图形对象;其二是使用定位工具定位对象。前者能自由选择,可以选择工作表中的部分图形对象也可以选择所有图形对象,而后者总是选中工作表中的所有图形对象。

2.默认状态下,工作表中插入的图形对象都是锁定纵横比的,因此改变图形对象的高度可以同时改变它的宽度。

3.修改图形对象的高度或宽度并不能改变图形对象占用的空间,因此调整工作表中的图片高度或者宽度后,工作簿的体积并不会变化。

Excel 能否批量删除工作簿的作者信息?

如图4.230所示,在文件夹中将鼠标指针指向工作簿时,在指针下方会弹出一个提示信息,其中一项是作者姓名。由于某些原因,不想让文件的属性中产生自己的真实姓名,有没有办法批量修改多个文件的作者姓名呢?

图4.230 作者信息

解题步骤

通过右键菜单可以打开文件的“属性”对话框,然后在其中可以修改或删除作者信息,支持批量删除,具体操作步骤如下。

1.在资源管理器中选择需要修改作者姓名的所有工作簿。

2.对选中的任意文件单击右键,并从右键菜单中选择“属性”菜单。

3.打开“详细信息“选项卡,然后单击下方的”删除属性和个人信息”,操作界面如图4.231所示。

4.在“删除属性”对话框中单击“从此文件中删除以下属性”,然后选择列表中的“作者”复选框并单击“确定”按钮执行删除,操作界面如图4.232所示。

图4.231 启用“删除属性”对话框

图4.232 删除“作者”属性

5.返回“属性”对话框后,在“作者”文本框中输入任意昵称,例如“表格居士”,单击“确定”按钮后,将鼠标指向文件可以预览新的作者信息。图4.233是添加作者信息的界面,图4.234是预览界面。

图4.233 修改“作者”属性值

图4.234 预览修改后的信息

知识扩展

1.作者信息来自于“Excel选项”对话框中的“用户名”,如果修改此“用户名”的值可以让新的工作簿产生新的作者信息。不过对于以前创建的文件,则需要在资源管理器中修改文件属性,修改的办法是先删除再添加,因为一个文件允许有多个作者,所以直接添加并不会覆盖以前的作者姓名。

2.在“属性”对话框中的“作者”下方还有一个“最后一次保存者”,它也会泄露作者信息,在删除“作者”属性值时应该把“最后一次保存者”也一并删除。

Excel 可以批量复制格式吗?

在图4.95中有4个标题,要求每个标题的格式必须一致。现在已经对A组的标题设置了格式,包含字体名称、字号、字体颜色和单元格背景颜色,是否有办法将A组的格式快速复制到其他标题区域中去?

解题步骤

格式刷可以将一个单元格或一个区域的值快速复制到其他单元格或区域,具体操作方法如下。

1.选择第一个标题区域A1:C2。

2.双击“开始”选项卡中的格式刷(其图标为)。

3.依次选择E1:G2、A11:C12和E11:G12区域,此时E1:G2、A11:C12和E11:G12区域将自动应用A1:C2区域的格式,效果如图4.96所示。

图4.96 使用格式刷批量复制格式后的效果

4.按Esc键取消格式刷工作模式,此时鼠标指针旁边的格式刷图标会自动消失。

知识扩展

1.复制工具很多,其中复制粘贴会将区域的值和区域的格式一并复制过去,不符合本例需求;选择性粘贴格式尽管可以只复制格式,但其步骤多、效率低,它适合单个区域复制;格式刷只复制格式,效率最高,适合对多区域粘贴格式。

2.单击格式刷只能复制一次格式,而双击格式刷则可以不限制复制次数,直到用户按 Esc键后停止。

3.格式刷不会复制单元格的行高和列宽,假设需要将宽度与高度也一并复制过去,应采用选择性粘贴。

Excel 能否批量添加前缀/后缀

图 4.80 是某公司的工资表,现要求将出勤异常栏的时间后面加“小时”,实际工资的前面添加“美元”,从而不至于产生歧义。有没有办法批量添加而不影响公式运算呢?

解题步骤

自定义单元格的数字格式可以批量为单元格添加前缀或后缀,而且不影响公式运算,具体操作步骤如下。

1.选择C2:C11区域,按组合键<Ctrl+1>,弹出“设置单元格格式”对话框。

2.单击“自定义”,右方的格式代码文本框中默认值是“G/通用格式”,在其后添加“小时”2字,操作界面如图4.81所示。

图4.81 设置单元格格式从而添加后缀

3.单击“确定”按钮保存设置,然后选择E2:E11区域,并按组合键<Ctrl+1>,弹出“设置单元格格式”对话框。

4.单击“自定义”,右方的格式代码文本框中显示了以前设置的格式代码“0.0”,在其前方添加“美元\:”,操作界面如图4.82所示。

图4.82 设置单元格格式从而添加前缀

图4.83 添加前缀与后缀的结果

格式代码原本应该是“美元:0.0”,表示在数字格式“0.0”前追加“美元:”,但是由于半角冒号属于特殊字符,需要使用“\”将它还原为字符本身。

5.单击“确定”按钮保存设置,同时返回工作表界面,此时工资表将显示为图4.83所示的结果,C列添加了后缀,E列添加了前缀。

知识扩展

1.单元格的格式代码相当复杂,有太多的特殊字符,也有很多固定的字符串需要记住。“G/通用格式”代表默认的格式“常规”,也就是说,所有单元格在自定义格式之前都采用“G/通用格式”,在此情况下,单元格会自动调整数值的显示方式。例如,单元格的宽度不够显示整个数字时,会对小数进行四舍五入,还会对大于等于12位的值使用科学计数(指数)法显示。自定义数字格式时往往会固定小数的位数,或者按需求添前缀、后缀。

2.由于“G/通用格式”代表“常规”,因此“G/通用格式小时”表示在原来的数值后面添加后缀“小时”,“美元G/通用格式”则表示在原来的数值前面添加前缀“美元”。本例中E2:E11区域原本的格式代码是“0.0”而不是“G/通用格式”,因此采用的格式代码为“美元\:0.0”。

3.格式代码原本是分4个段的:“正数;负数;0;文本”,当需要添加前缀或后缀的区域有正数以外的值时,格式代码会复杂许多。例如,B2:B2 区域既可能有正数、负数、0,也可能有文本,现要求在正数前面添加“收入”、负数前面添加“支出”、0和空白都不显示、文本则添加“【”和后缀“】”,那么可以对此区域设置格式代码“收入G/通用格式;支出G/通用格式;;【@】”,图4.84是数据源,图4.85是设置数字格式后的效果。

图4.84 数据源

图4.85 添加格式代码后

此处的格式代码中包含3个分号,它将代码切分为4段,第一段“收入G/通用格式”对应正数,表示在正数前面添加“收入”;第二段“支出 G/通用格式”对应负数,表示在负数前面添加“支付”,由于“G/通用格式”前面没有写负号,因此负数“-12.5”将显示为“支持12.5”;第三段是空白,分号后面什么都没有,因此当单元格中的值是0时将显示为空值;第四段“【@】”对应文本,表示在文本前后分别添加“【”和“】”,代码中的“@”代表文本。

4.格式代码的前三段都是数值,最后一段代表文本,因此也可以使用两段代码来分别限制数值和文本。例如,格式代码“0元;【@】”表示对正数、负数和0都添加后缀“元”,文本则添加方括号,效果如图4.86所示。

图4.86 用两段代码格式化区域

使用两段编码也基本能实现需求,不过分四段代码控制单元格能做到更精细、更有针对性。

5.格式代码可以让单元格显示额外的内容,如让数字显示为文本,但是它仅改变了单元格的显示效果、不改变单元格本身的值,因此不管如何设置单元格的格式都不会影响运算。

Excel 如何让数据批量扩大/缩小若干倍?

下图中的产品单价是美金,领导突然要求改用人民币结算,要把D列的所有单价都扩大到6.7倍(当前的美金与人民币换算比例为6.7:1)。

手工一个一个修改单价过于烦琐,是否有办法一次性修改完所有的单价呢?

图4.75 订单表

解题步骤

选择性粘贴工具可以批量将单元格的值扩大若干倍或缩小到N分之一,具体操作方法如下。

1.在G1单元格输入数值6.7。

2.复制G1,并选择D2:D10区域,然后单击右键,从右键菜单中选择“选择性粘贴”,弹出“选择性粘贴”对话框。

3.在对话框中选择粘贴选项“数值”及运算选项“乘”,然后单击“确定”按钮。

4.将标题“单价(美金)”修改为“单价”,图4.76是粘贴选项设置界面,图4.77则是粘贴结果,可以看到D2:D10区域内每个单元格的值都扩大了6.7倍。

图4.76 设置粘贴选项

图4.77 粘贴结果

如果需要将D2:D10区域缩小1/6.7,那么按同样步骤执行选择性粘贴即可,唯一不同的地方是在“选择性粘贴”对话框中将“乘”修改为“除”。

知识扩展

1.选择性粘贴提供了加、减、乘、除等运算选项,默认状态是“无”。

2.通过选择性粘贴对一个区域扩大或缩小时需要注意的是必须在指定运算选项的同时将粘贴选项设置为“数值”,否则会将格式信息一并复制过去。

3.事实上,选择性粘贴工具不仅可以对一个区域中的每个值都扩大/缩小相同的倍数,还可以一次性将不同单元格扩大/缩小不同的倍数。例如,要求图 4.78 中 A1:A10 每个单元格都相应地减去C1:C10,那么可以复制C1:C10,然后选择A1:C10区域,弹出“选择性粘贴”对话框,选择“数值”和“减”复选框,单击“确定”按钮后A1:A10的值将分别减去对应于C1:C10区域的值,图4.79即为批量相减的结果。

图4.78 批量减去一个数值前

图4.79 批量减去一个数值后

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