本章主要讲一下,如何在Excel工作表中导入图片,并统一格式大小。

在一些信息管理当中,图片使用也十分普遍。

特别是如个人信息管理中的照片或都是设备仪器管理中的一些设备图片。

其实任何需要图示的信息表,都需要对图片进行处理。

表格中导入图片

应该是一个很简单的操作,通常在菜单栏中插入项就有一些引导提示。

这样有一个问题存在,就是是插入的图片大小是默认大小,不会想让它多大就多大。

那么问题就是,如果我们要插入100张或更多图片,这样的话,需要每张图片进行大小修改,就比较不方便。

当然了,也可以全部选择然后进行大小统一修改。但是又会出现另一个问题,定位。

修改的后图片,并不是按照我们想要的位置来存放。

这就是一个很大麻烦,如果每张进行一次修改,那么工作量就会成一个天量。

有vba就不同了,再多的的图片,也只需要几行代码来解决,时间基本也用得很少,几乎可以不用考虑用多久,因为在你考虑的时候,任务已经完成。

上图为一个操作示例。

一个按钮,另加两个文本框。

文本框自定义图片的高度和宽度。

图片导入后自动适应表格大小。

要问如何来做,下面解释一下基本思路。

关键代码,就一行

添加图片

ActiveSheet.Shapes.AddPicture FileName, True, True, Left, Top, Width,Heigh

参数解释

代码

代码不少,大多是对外围环境各一些错误处理机制的引导。

在执行过程中会出现很多问题,这也难以避免,由于软件平台以及软件系统环境的不同,造成很多不可预知的问题存在。

Windows就是这样,既给了我们最大的自由度和方便性,同时也给了最多的BUG。

至于取舍,我们各自选择。

但是,为了完成一些可以触及的梦想,一些可接受的问题,还是要接受的。

图片地址统一放到一个数组里,然后对数组再进行操作,添加到相应的表格里。

图片地址数组函数

Private Function getPicUrl() Dim Gurl As String, Parr(), pi As Integer, i As Integer With Application.FileDialog(msoFileDialogFilePicker) .AllowMultiSelect = True .Filters.Clear .Filters.Add "图片文件", "*.jpg;*.gif" .InitialFileName = ThisWorkbook.Path & "picgif" If .Show = -1 Then i = .SelectedItems.Count ReDim Parr(0 To i) For pi = 1 To i Parr(pi) = .SelectedItems(pi) Next pi getPicUrl = Parr Exit Function End If End With ReDim Parr(0) Parr(0) = "No" getPicUrl = Parr End Function

欢迎关注、收藏