我需要將影像動態添加到 Excel 作業表中,但是影像不能系結到特定路徑,因為該檔案是要共享的。通過動態,我的意思是我希望在呼叫函式時將影像放置在作業表上。我已經完成了這部分作業,但是如果我移動圖片檔案,影像就會丟失在作業表中。
如果我將影像插入 excel,我可以看到該影像存盤在該 excel 檔案的媒體檔案夾中,但是我不知道如何參考它。
我還考慮將影像編碼為 base64,然后在啟動作業簿時從 excel 中對其進行解碼并將其放置在檔案系統中的某個位置,但是我無法弄清楚如何做到這一點,因為所有示例都只顯示解碼字串, 不是整個檔案。
澄清一下:無論我的檔案系統上是否有圖片,我都希望圖片能夠保留下來,就像我手動插入它們時一樣。
插入圖片的代碼:
Sub InsertPictureHyperlink(row As Integer, column As Integer, path As String, extnsn As String)
Dim image As Picture
Dim image_path As String
Dim image_name As String
Dim appDataPath As String
image_path = Environ$("AppData") "\appres\" extnsn ".png"
With ActiveSheet.Cells(row, column)
Set image = ActiveSheet.Pictures.Insert(CStr(image_path))
image.Top = .Top
image.Left = .Left
image.ShapeRange.LockAspectRatio = msoFalse
image.Placement = xlMoveAndSize
image.ShapeRange.Width = 25
image.ShapeRange.Height = 25
End With
With ActiveSheet
.Hyperlinks.Add Anchor:=.Shapes(image.name), Address:=path
End With
ActiveCell.Value = ""
End Sub
uj5u.com熱心網友回復:
如果您需要使用 Excel 檔案傳輸圖片,并且不想將它們作為圖片放在額外的檔案夾中,解決方案可以是將所有圖片插入隱藏的作業表中,然后從那里將它們復制到所需的作業表中。
這樣您的圖片就可以隨時保存在 Excel 檔案中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/329194.html
