Win10之家:Excel下自动插入文字对应图片的技巧
在日常工作中,如制作员工名册、产品介绍表的时候经常要在Excel中插入很多和文字对应的图片。常规的方法是一张一张将照片插入到对应的行列中,然后再调大小。如果需要插入的图片很多,传统的操作显然费时费力。其实我们可以利用批处理和Excel公式生成“图片的链接代码”,一步到位实现图片的批量导入和排版 。这里我们以制作员工花名册为例,首先将员工照片以员工名字为名全部保存在“D:照片”目录中。
因为Excel生成图片链接是依据文件名自动生成的,因此我们首先要提取照片文件名称。文件名可以使用Dir命令提取,启动记事本建立一个批处理cfan.bat,放置在“D:照片”目录中,代码如下:
dir *.png /b >名称.txt
代码解释:将指定目录里的png图片(如果是其他格式,请自行更改代码)提取出文件名,并在当前目录下生成“名称.txt”文件(图1)。
图1 生成文件
这样在“D:照片”下运行上述批处理,打开“D:照片名称.txt”就可以看到当前目录下文件名了,在记事本中点击“编辑→替换”,将“.png”替换为空字符,完成替换后就可以获得纯粹文件名字符了(图2)。
图2 替换操作
复制上述字符,然后打开Excel,将复制的字符粘贴到A列。这样A2开始输入的就是和照片对应的员工名称,按提示输入其他说明字符(图3)。
图3 将提取字符粘贴到Excel
选中B2,点击“插入→图片→来自文件”,选择对应员工的照片插入B2单元格,同时调整照片大小,使得照片可以在单元格中显示效果最佳。接着调整B2单元格的行高和列宽,只要将鼠标移动到行列线调整即可看到显示的具体数值,尽量选择整数数值,比如本例中宽度是155像素(18.75cm)),高度是190像素(142.5cm),把这个作为照片大小基准数值(图4)。
图4 获取单元格宽度和高度
选中B列,点击“开始→格式→行高”和“开始→格式→列宽”,将行高和列宽分别设置为B2显示的数值,这样B列的单元格就调整为同意大小,并且可以正常显示插入的图片。接着将B2插入的图片删除,然后选中B2,在公示栏输入公式“="
"”,然后将公式向下填充,这样B列公式会自动读取A列名称(图5)。
[!--empirenews.page--]
图5插入并填充公式
公式解释:
公式的含义是在B列插入照片链接,照片名字引用A列的员工名称,其中width和heigh则是调整照片为对应的像素大小,这两个参数实际上是完成对插入照片的批量调整。
依次选中B2及其填充公式的单元格,右击选择“复制”,然后将复制的代码粘贴到记事本中。返回Excel窗口,同上选中插入公式的单元格右击选择“清除内容”,清除插入公式。接着在记事本中复制上述获得代码(图6)。
图6 复制获得代码
在Excel中选中B2,右击选择“粘贴→选择性粘贴→Unicode文本”,将上述代码以“Unicode文本”形粘贴到Excel中,这样Excel会自动读取代码对应的链接图片(图7)。
图7 选择性粘贴
由于Excel支持Html代码,这样以Unicode文本形式粘贴的链接图片就会自动显示在Excel中,而且大小由代码自动调整完成。插入的图片和A列显示的员工一一对应,这样我们就完成照片批量插入和自动调整了(图8)。
图8 自动插入照片
由于这里使用代码链接图片,因此图片如果要替换,比如很多公司员工名字相同但是性别不同,这样通过更改照片名称和代码也可以快速进行更改。比如公司有男女员工都叫张星,那么就可以在女的张星照片后加上“张星(女).png”,同时A列假设为A5对应员工名称也更改为“张星(女)”,然后将其对应B5照片删除,在记事本中代码更改为“
”,将其以Unicode文本形式选择性粘贴到B5即可实现照片的替换,“张星(男)”替换操作类似。
小提示:
上述方法是将照片批量插入Excel中,如果要将Excel中批量插入的照片导出,则可将Excel文档另存为网页形式,这样可以得到一个和保存名称相同的“.files”目录,其中保存的就是全部插入的图片。也可以在插入图片时将图片插入超链接,代码类似 ,这里使用table,body都可以,但table会纵向排布,而body会横向排布。
推荐下载: