使用VBA从关闭的Excel工作簿导入图像/图片



我正在将csv文件和图片从网络文件夹复制到temporary Excel workbook的不同工作表中。我用这个temporary workbookslice/dice the csv dataresize the pictures放在一张纸上。

我想将这些图片从这个CLOSED temporary workbook导入到我的current Workbook或将complete Sheet导入我的current Workbook。我可以使用ADODB recordset导入包含csv文本数据的所有其他工作表,但无法导入图片。

  • 有没有办法without opening the temporary workbook导入这些图片?
  • ADO 是否在已关闭的 Excel 工作簿的 Excel 工作表单元格中嵌入了method to import pictures
  • Excel中是否有一些图片控件,所有图像最初都可以存储在临时工作簿中,然后再导入回当前工作簿中?
  • 有没有办法将图像表从closed temporary workbook导入/复制到current workbook

谢谢。

图片最初来自哪里。 我猜它们最初不是来自 Excel,对吧。 我当然不知道您的完整设置,但是如果您在文件夹中有一堆图像,并且想要将它们全部导入Excel工作表,则可以使用以下代码来执行此操作。

Sub InsertPics()
Dim fPath As String, fName As String
Dim r As Range, rng As Range
Application.ScreenUpdating = False
fPath = "C:your_path"
Set rng = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
i = 1
For Each r In rng
fName = Dir(fPath)
Do While fName <> ""
With ActiveSheet.Pictures.Insert(fPath & fName)
.ShapeRange.LockAspectRatio = msoTrue
Set px = .ShapeRange
If .ShapeRange.Width > Rows(i).Columns(2).Width Then .ShapeRange.Width = Columns(2).Width
With Cells(i, 2)
px.Top = .Top
px.Left = .Left
.RowHeight = px.Height
End With
End With
i = i + 1
fName = Dir
Loop
Next r
Application.ScreenUpdating = True
End Sub

最新更新