Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2457 / 13645 ツリー ←次へ | 前へ→

【67896】マクロ実行ボタンを消したい trmmy 11/1/14(金) 23:27 質問[未読]
【67899】Re:マクロ実行ボタンを消したい 山猿 11/1/15(土) 8:34 発言[未読]
【67902】Re:マクロ実行ボタンを消したい trmmy 11/1/15(土) 9:09 お礼[未読]
【67903】Re:マクロ実行ボタンを消したい Abebobo 11/1/15(土) 9:28 発言[未読]
【67926】Re:マクロ実行ボタンを消したい UO3 11/1/17(月) 12:53 回答[未読]

【67896】マクロ実行ボタンを消したい
質問  trmmy  - 11/1/14(金) 23:27 -

引用なし
パスワード
   activesheetでないシート(sheet2)にButton3というマクロ実行ボタン
が存在してば、それを削除する
というコードを書きたいのですが、「存在していれば」という部分が
かけませでんた。
ご教授願えないでしょうか?

【67899】Re:マクロ実行ボタンを消したい
発言  山猿  - 11/1/15(土) 8:34 -

引用なし
パスワード
   ▼trmmy さん:
エラーを利用してはどうでしょうか。

黙って削除するなら
  Dim sp As Shape
  On Error Resume Next
  Set sp = Worksheets("Sheet2").Shapes("Button 3")
  sp.Delete
  On Error GoTo 0

断りがいるなら
  Dim sp As Shape
  
  On Error Resume Next
  Set sp = Worksheets("Sheet2").Shapes("Button 3")
  On Error GoTo 0
  
  If Not sp Is Nothing Then
    MsgBox "そのボタンを削除します"
    sp.Delete
  End If

もしActiveXコントロールだとしても、同じ考え方が取れるはずです。

【67902】Re:マクロ実行ボタンを消したい
お礼  trmmy  - 11/1/15(土) 9:09 -

引用なし
パスワード
   ▼山猿 さん:
試したところうまくいきました。
ありがとうございました。

【67903】Re:マクロ実行ボタンを消したい
発言  Abebobo  - 11/1/15(土) 9:28 -

引用なし
パスワード
   Sub test()

Dim My_c  As Object

For Each My_c In Sheet2.Shapes

 Debug.Print My_c.Name
 Debug.Print My_c.Type
 Debug.Print My_c.TopLeftCell.Address
Next

End Sub

こんなので探してから・・・とか

【67926】Re:マクロ実行ボタンを消したい
回答  UO3  - 11/1/17(月) 12:53 -

引用なし
パスワード
   ▼trmmy さん:

こんにちは
山猿さんの回答で解決済みでしょうが、こんなコードでも。

Sub Test()
  If IsObject(Sheets("Sheet2").Evaluate("Button 3")) Then
    MsgBox "あります"
  Else
    MsgBox "ありません"
  End If
End Sub

2457 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free