標題:
[發問]
關於圖片VBA的問題
[打印本頁]
作者:
av8d
時間:
2012-2-2 11:28
標題:
關於圖片VBA的問題
本帖最後由 av8d 於 2012-2-2 11:32 編輯
我開啟了兩張圖片VBA~分別是Image1和Image2
我希望我點一下Image1將會跑插入圖片的那個視窗,
預設路徑是桌面,然後能讓我選取,可是不知道裡面該怎麼寫
Private Sub Image1_Click()
End Sub
然後寫個巨集去刪除Image1的圖片,但是內容有錯
Sub ColseImage_Click()
Image1.Picture = (無)
End Sub
然後寫個巨集去刪除全部的圖片VBA,但是內容有錯
Sub ColseImage_Click()
Image1.Picture = (無)
Image2.Picture = (無)
End Sub
圖片VBA內的Height和Width內的數值單位是?公分還是?
作者:
GBKEE
時間:
2012-2-2 13:37
回復
1#
av8d
Option Explicit
Private Sub Image1_Click()
With Application.FileDialog(msoFileDialogFilePicker)
.InitialFileName = "D:\*.*" '修改為你的桌面路徑
If .Show = -1 Then Image1.Picture = LoadPicture(.SelectedItems(1))
End With
End Sub
複製代碼
刪除Image1的圖片 Image1.Picture = LoadPicture("")
VBA的說明:
Height、Width 屬性 物件的高度與寬度,單位為點。
點數 一點為 1/72 吋。字形大小通常以點數來量度
Height 或 Width 必須大於等於零。在多數系統中,通常其範圍在 0 到 +32,767 之間,超過的話則需視系統而定。
作者:
howard3344
時間:
2012-2-2 17:52
印象上一單位為視窗坐標1單位的長度
作者:
av8d
時間:
2012-2-4 10:33
回復
2#
GBKEE
刪除Image1的圖片 Image1.Picture = LoadPicture("")
您好~如果我是開啟畫一個圓形~然後右鍵→指定巨集
會出現此處需要物件 (錯誤 424)
Dim RetVal ' 為一 Variant。
' 預設屬性指定為型態 8,即 Variant RetVal。
RetVal = CreateObject("Excel.Application")
RetVal.Visible = True ' 錯誤在此發生。
當指定物件引用時,請使用 Set 陳述式。
所以如果是用指定巨集的寫法不同的地方是? 再次感謝。
作者:
GBKEE
時間:
2012-2-4 10:58
回復
4#
av8d
您好~如果我是開啟畫一個圓形~然後右鍵→指定巨集
錄製:
Sub Macro1()
ActiveSheet.Shapes("AutoShape 1").Select
Selection.OnAction = "ThisWorkbook.EX"
End Sub
複製代碼
自己寫的
Sub EX()
Sheet1.Shapes("AutoShape 1").OnAction = "ThisWorkbook.EX"
End Sub
複製代碼
***************************
Dim RetVal ' 為一 Variant。
' 預設屬性指定為型態 8,即 Variant RetVal。
RetVal = CreateObject("Excel.Application")
RetVal.Visible = True ' 錯誤在此發生。
當指定物件引用時,請使用 Set 陳述式。
*********這一段不明瞭 你已知道
請使用 Set 陳述式
作者:
av8d
時間:
2012-2-4 11:34
本帖最後由 av8d 於 2012-2-4 11:54 編輯
回復
5#
GBKEE
如果我是寫在橢圓32裡面該如何套用呢?因為會出現 "系統錯誤&H80070057(-2147024809)"
點了一下說明出現
產生指定系統錯誤
Visual Basic 遇到一個由系統或外部元件所產生的錯誤。
Sub 橢圓32_Click()
End Sub
如果要一次刪除全部的圖片VBA寫法是否有比較簡易的方法呢?
謝~謝~大~大
作者:
GBKEE
時間:
2012-2-4 12:33
回復
6#
av8d
附上檔案看看
Sub Ex()
ActiveSheet.Pictures.Delete '刪除全部照片
''''''''''''''''''''''''''''''''''''''''''
ActiveSheet.Shapes.SelectAll '點選全部圖片
Selection.Delete '刪除 點選全部圖片
End Sub
複製代碼
作者:
av8d
時間:
2012-2-4 12:52
本帖最後由 av8d 於 2012-2-4 13:01 編輯
回復
7#
GBKEE
[attach]9427[/attach]
我剛測試了一下~都可以了~
Image1.Picture = LoadPicture("")
刪除全部就要複製貼上10次了
Image1.Picture = LoadPicture("")
Image2.Picture = LoadPicture("")
...
..
.
.
謝謝版主~您辛苦了~應該都還沒吃飯吧~再次感謝!
作者:
GBKEE
時間:
2012-2-4 13:32
回復
8#
av8d
Sheet1
沒有
橢圓 32
Sub 橢圓32_Click()
Sheet3
.Shapes("橢圓 32").OnAction = "ThisWorkbook.EX"
End Sub
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)