台灣最大程式設計社群網站
線上人數
1329
 
會員總數:242945
討論主題:187841
歡迎您免費加入會員
討論區列表 >> VB6 >> 求救!Excel如何用VBA插入PDF及圖片?
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
求救!Excel如何用VBA插入PDF及圖片?
價值 : 200 QP  點閱數:479 回應數:5

樓主

小寧子
門外漢
0 3
72 4
發送站內信

Excel如何用VBA插入PDF及圖片?
我需要在Excel上放個按鈕,可以插入圖片或PDF檔案到新sheet,試過幾種網路分享的程式,但只能達到插入圖片或只能插入PDF路徑,無法直接顯示在頁面,以下是我查到的程式及想達到的功能,麻煩各位專家幫忙:

1.按鈕功能:新增sheet(命名"POD"),顯示資料夾,可選擇上傳圖片或PDF檔案,直接顯示POD sheet.
2.上傳的圖片或PDF檔案,直接顯示內容,非捷徑或超連結的圖示.
3.如果已經有建立POD sheet,再次按鈕,希望可以刪除舊圖,只顯示新上傳的圖或PDF內容.(因為有指定sheet名稱,所以再按上傳按鈕會有錯誤訊息)

上傳按鈕(1)(只會顯示圖片)
Private Sub CommandButton2_Click()
Sheets.Add(After:=ActiveSheet).Name = "POD"
Dim FuFileName As String
'Application.Dialogs(xlDialogInsertPicture).Show
FuFileName = Application.GetOpenFilename
If FuFileName = "False" Then GoTo 100
ActiveSheet.Pictures.Insert(FuFileName).Select
On Error GoTo 100
100:
End Sub

上傳按鈕(2)(只會顯示捷徑,圖片無法打開)
Private Sub CommandButton3_Click()
Sheets.Add(After:=ActiveSheet).Name = "POD"
Dim lngCount As Long
Dim myfilepath As String
Dim myfilename As String
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Show
For lngCount = 1 To .SelectedItems.Count
'MsgBox .SelectedItems(lngCount)
myfilepath = .SelectedItems(lngCount)
myfilename = Right(myfilepath, Len(myfilepath) - InStrRev(myfilepath, "\"))
'MsgBox (myfilepath)
ActiveSheet.OLEObjects.Add(Filename:= _
myfilepath, Link:=False, DisplayAsIcon:= _
True, IconFileName:= _
"C:\Windows\Installer\{AC76BA86-7AD7-1033-7B44-AB0000000001}\PDFFile_8.ico", _
IconIndex:=0, IconLabel:=myfilename).Select
Next lngCount
End With
End Sub

搜尋相關Tags的文章: [ VBA ] , [ 上傳圖片 ] , [ PDF ] ,
本篇文章發表於2018-01-17 13:51
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

Ader Chen
檢舉此回應

請試看看有無幫助:
「上傳按鈕(2)(只會顯示捷徑,圖片無法打開)」那一段,
ActiveSheet.OLEObjects.Add 的其中的 DisplayAsIcon 參數,
將 DisplayAsIcon:=True 改為 DisplayAsIcon:=False
True 是顯示圖示, False 是顯示內文(第1頁).
本篇文章回覆於2018-01-18 08:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小寧子
檢舉此回應
試過可以顯示第一頁內文,但如果要讓全文(第二頁之後)都顯示在excel內,有辦法嗎?
另外圖片還是沒辦法顯示.
本篇文章回覆於2018-01-18 10:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Ader Chen
檢舉此回應
PDF 的部份, 在 Excel 只能顯示第一頁, 沒得改.
在第一頁畫面點兩下, 開啟 PDF reader 才能看其他內容.

圖片的部份, 兩者在 Excel 中是不同物件, 處理的程式碼不同, 例如:
ActiveSheet.Pictures.Insert(FuFileName)

本篇文章回覆於2018-01-18 12:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

小寧子
檢舉此回應
如果用按鈕(2)的程式去修改成2種類型(PDF/圖片)都可以上傳,請問要怎麼改?
本篇文章回覆於2018-01-18 15:41
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
最有價值解答

Ader Chen
檢舉此回應

可以用副檔名判斷, 例如:

本篇文章回覆於2018-01-18 16:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.