为减小文档大小,怎样使表格插入的图片只是链接
1、首先在开发工具中打开VBA编辑器
2、在单元格区域当中输入一些内容作为例子
3、在VBA编辑器中插入模块
4、在模块当中输入如下代码,然后运行Sub insertpic() Dim i, j, k As Long Dim filpath As String Dim rng As Range Dim s As String With Sheet1 For Each im In ActiveSheet.Shapes im.Delete Next 'For i = 1 To .Range("a1000").End(xlUp).Row '循环的值由A列行数决定 For i = 0 To 1 For j = 2 To 7 Step 5 For k = 0 To 1 'filpath = ThisWorkbook.Path & "\" & .Cells(i, 1).Text & ".jpg" '图片路径 'filpath = "E:\02" & "\" & .Cells(6 + i * 8, 2).Text & ".jpg" 'filpath = "E:\02" & "\" & .Range("B" & (6 + i * 8)).Text & ".jpg" filpath = "E:\02" & "\" & .Cells(6 + i * 8 + k, j).Text & ".jpg" If Dir(filpath) <> "" Then '查找名字相同并插入图片,列出图片名字 .Pictures.Insert(filpath).Select '选择插入的图片 Selection.ShapeRange.LockAspectRatio = msoFalse 'Set rng = .Cells(i, 3) '设置图片插入的位置,第三列 'Set rng = .Range("B" & (6 + i * 8) & ":F" & (6 + i * 8)) 'Set rng = .Range("B" & (6 + i * 8)).MergeArea Set rng = .Cells(6 + i * 8 + k, j).MergeArea With Selection .Top = rng.Top + 5 .Left = rng.Left + 5 .Width = rng.Width - 10 .Height = rng.Height - 10 End With' Set rg = rng.TopLeftCell' If rg.MergeCells = True Then' With Selection' .Top = rg.MergeCell.Top + 5' .Left = rg.MergeCell.Left + 5' .Width = rg.MergeCell.Width - 10' .Height = rg.MergeCell.Height - 10' End With' Else' With Selection' .Top = rg.Top + 5' .Left = rg.Left + 5' .Width = rg.Width - 10'
5、最后我们就可以看到成功的在表格当中插入了图片,
6、我们还可以在文档当中看到文件的大小是非常小的,因为我们所插入的图片只是链接而已,而不是图片本身,