Excel VBA質問箱 IV

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

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


7473 / 13644 ツリー ←次へ | 前へ→

【38956】常にbutton1を作成するには emi 06/6/15(木) 11:30 質問[未読]
【38958】Re:常にbutton1を作成するには ぴかる 06/6/15(木) 12:43 回答[未読]
【38959】Re:常にbutton1を作成するには ぱっせんじゃー 06/6/15(木) 12:44 発言[未読]
【38960】Re:常にbutton1を作成するには Jaka 06/6/15(木) 12:57 発言[未読]
【38961】Re:常にbutton1を作成するには Jaka 06/6/15(木) 13:03 発言[未読]
【38964】Re:常にbutton1を作成するには emi 06/6/15(木) 13:25 お礼[未読]

【38956】常にbutton1を作成するには
質問  emi  - 06/6/15(木) 11:30 -

引用なし
パスワード
   VBAの初心者です。わからないことがあり、質問致します。

VBAでボタンを作成し、作成したボタンをクリックするとそのボタンが
削除されるマクロです。
1度目は正常に動作しますが、2回目に行うとVBAが"Button 2"を作成
してしまい、エラーになります。Excelを再起動すれば大丈夫なのですが
再起動せずに何度も実行させたいのです。解決方法を教えてください。

-----------------
Sub macro()
ActiveSheet.Buttons.Add(100, 200, 50, 30).Select
ActiveSheet.Shapes("Button 1").Select
Selection.OnAction = "消去macro"
Selection.Characters.Text = "実行"
Range("A1").Select
End Sub
---------------
Sub 消去macro()
ActiveSheet.Shapes("Button 1").Select
Selection.Delete
End Sub
----------------

【38958】Re:常にbutton1を作成するには
回答  ぴかる  - 06/6/15(木) 12:43 -

引用なし
パスワード
   emiさん、こんにちは。

マクロ記録でボタンの名前を変更し、ちょっちマクロ修正してみました。
多分OKやと思います。
Sub macro()
  ActiveSheet.Buttons.Add(100, 200, 50, 30).Select
  With Selection
    .Name = "Button 1"
    .OnAction = "消去macro"
    .Characters.Text = "実行"
  End With
  Range("A1").Select
End Sub

【38959】Re:常にbutton1を作成するには
発言  ぱっせんじゃー  - 06/6/15(木) 12:44 -

引用なし
パスワード
   なぜ削除するのでしょう?

非表示にしておいて必要になったら
再度表示、ではだめですか?

非表示
○.Visible = False

表示
○.Visible = True

【38960】Re:常にbutton1を作成するには
発言  Jaka  - 06/6/15(木) 12:57 -

引用なし
パスワード
   削除しないで非表示のほうがいいと思うけど、
とりあえず、手法1

Sub macro()
Dim Sap As Object
Set Sap = ActiveSheet.Buttons.Add(100, 200, 50, 30)
Sap.Name = "作ったボタン"
Sap.OnAction = "消去macro"
Sap.Characters.Text = "実行"
Range("A1").Select
Set Sap = Nothing
End Sub

Sub 消去macro()
ActiveSheet.Shapes("作ったボタン").Delete
End Sub

【38961】Re:常にbutton1を作成するには
発言  Jaka  - 06/6/15(木) 13:03 -

引用なし
パスワード
   上のと同じでしたね。

余計なものが...、私のは、これいらないです。
>Range("A1").Select  ←いらない。

【38964】Re:常にbutton1を作成するには
お礼  emi  - 06/6/15(木) 13:25 -

引用なし
パスワード
   ぴかる様
Jaka様

早々、適切なご回答ありがとうございました。
解決しました。感謝いたします。

また
ぱっせんじゃー様

非表示方法を教えてくださり、
ありがとうございました。

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