前景提要(文末提供源码下载)
今天我们来学习下Excel和图片之间的一些操作,Excel的强大之处就在于他能够存储很多的东西,不管是控件,数据还是图片都能够存储,给我们的日常工作带来了很大的帮助,但是也有一些操作的不方便,比方说没有批量导入的功能,并且图片的大小无法在导入的时候调整,后期的调整比较的麻烦,非常的不利于操作,那么如何解决这个问题呢?
场景说明
![1332f511e4e17187c1739fa640f754e1.png](https://img-blog.csdnimg.cn/img_convert/1332f511e4e17187c1739fa640f754e1.png)
这是我们今天的操作场景,我们电脑本地存在每个员工的头像的照片,并且已经命名了,我们现在希望能够实现的效果是,通过VBA快速的将图片和A列的名字对应起来,然后将头像填充到B列,形成一个员工花名册的效果,
如果是手工插入的话,就需要一张张的导入,然后通过鼠标来调整大小,假设有很多员工的话,需要不停的操作,不断的调整图片的大小,非常的麻烦,有些甚至还要调整单元格的大小,这样并不高效,加班逃不掉的,我们来学习下VBA的玩法
代码区
Sub 插入图片()Dim Arr, i&, k&, n&, pd&Dim strPicName$, strPicPath$, strFdPath$, shp As ShapeDim Rng As Range, Cll As Range, Rg As Range, strWhere As StringWith Application.FileDialog(msoFileDialogFolderPicker) If .Show = -1 Then strFdPath = .SelectedItems(1) Else: Exit Sub End IfEnd WithIf Right(strFdPath, 1) <> "" Then strFdPath = strFdPath & ""End IfSet Rng = Application.InputBox("请选择图片名称所在的单元格区域