[算表] VBA如何能正確的刪除物件

作者: yimean (溫柔殺手)   2018-11-04 21:15:24
軟體:Excel
版本:2013
各位版上的大大晚上好。
我用下列方法在Excel的工作表中插入物件
Sub ImportPDF(item_number As String, sequency As Integer)
' 插入PDF調整
Dim PDF As Object
Dim PDFfilename As String
Dim real_locate_row As Integer
Dim sheetinfo As String
PDFfilename = item_number & ".pdf"
real_locate_row = (sequency - 1) * 36 + 1
Set PDF = ActiveSheet.OLEObjects.Add(Filename:=InsertPath & "\" &
PDFfilename, Link:=False, DisplayAsIcon:=False)
With PDF
.Top = ActiveSheet.Cells(real_locate_row, 2).Top
.Left = ActiveSheet.Cells(real_locate_row, 2).Left
.Width = 260
.Height = 355
End With
End Sub
在一個頁面中可能會有多個物件
如果我要進行刪除應該要怎麼做?
看微軟的說明OLEObjects(index).Delete
但是我並不知道index是多少?請問要怎麼用程式去看?
我也曾嘗試過用PDF.Delete,也是不行。
我在想,我不是已經將這個物件叫做PDF了嗎?怎麼還不能Delet?
另外,如果PDF真的可以是一個物件名稱的話,那麼我有多個PDF要插入,能不能建議好
的方法來命名插入的PDF?
這樣我就可以找到正確的物件然後刪除他了。
感恩
作者: soyoso (我是耀宗)   2018-11-04 21:22:00
在with內先.name = "自訂名稱字串",如"pdf"如其他程序sub內刪除的話activesheet.oleobjects("pdf").delete
作者: yimean (溫柔殺手)   2018-11-04 21:26:00
收到,感恩。
作者: soyoso (我是耀宗)   2018-11-04 21:27:00
如要刪除其他工作表的話,再以worksheets或sheets指定
作者: newacc (XD)   2018-11-04 22:15:00
PDF在你的code裡面並不是物件名稱
作者: yimean (溫柔殺手)   2018-11-05 09:12:00
那麼請教一下,在這個Case中PDF是什麼東西呢?
作者: soyoso (我是耀宗)   2018-11-05 09:25:00
為變數,dim處有宣告

Links booklink

Contact Us: admin [ a t ] ucptt.com