一、需求说明
有时为了在Excel内展示产品,需要批量插入图片到工作表,并且按一定规则排列好。借助Excel的插入图片功能一次性添加多张图片,会出现多张图片重叠,图片的大小不一的情况。今天我们就来简单改造这个插入图片的功能,一来让图片简单排列,二来统一图片的大小。
二、实现过程
1、先录制宏,获得核心语句
单击录制宏按钮,切换到插入选项卡,选择图片,打开插入图片对话框,选择一张相片,单击插入,再停止录制宏。
2、理解代码
通过录制宏获取的代码
Sub 宏1()' 宏1 宏 ActiveSheet.Pictures.Insert("C:\Users\Administrator\Desktop\VBA插入图片\大空翼.jpg") _ .SelectEnd Sub
我们可以看到,语句包含了图片文件的绝对路径,要想向工作表插入图片,必须提供图片文件的绝对路径。
3、获取图片文件路径
上一篇文章里提到,通过文件对话框可以获取文件的路径,这里我们如法炮制。
Sub 宏1() '声明一个图片路径变量 Dim image '创建一个文件对话框 With Application.FileDialog(msoFileDialogFilePicker) '设置对话框初始路径和活动工作簿一致 .InitialFileName = ActiveWorkbook.Path '设置对话框允许多选 .AllowMultiSelect = True