• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel VBAでの図形削除について質問です。 )

Excel VBAでの図形削除について質問です

このQ&Aのポイント
  • Excel VBAで作成した直角三角形の図形を削除する際に、コマンドボタンまで削除されてしまう問題が発生しています。
  • 図形を全て削除してから作成しているにも関わらず、コマンドボタンが消えてしまう原因が分かりません。
  • ExcelVBAに詳しい方や同じ経験をされた方からのアドバイスをお待ちしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

>dellShape.Shapes.SelectAll ここで、選択すべき図形がない場合に >Selection.Delete のSelectionがボタンを選んだ状態になってるとか。 Sahpes.Countが1以上だったらDeleteするようにしてみては。 試さないで書いてますが。

abuhiro
質問者

お礼

ありがとうございます。 やはりSelectionが影響していたみたいです。 アドバイス通りにカウントして対応しました。 ありがとうございました。

その他の回答 (1)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

>dellShape.Shapes.SelectAll 'すべての図形を選択する >Selection.Delete '現在選択されているオブジェクトを削除する 削除して Dim i As Integer For i = dellShape.Shapes.Count To 1 Step -1 If dellShape.Shapes(i).Type <> 12 Then dellShape.Shapes(i).Delete Next i を追加してください 但し、フォームのボタンを使用している場合は >If dellShape.Shapes(i).Type <> 12 Then を If dellShape.Shapes(i).Type <> 8 Then に変更してください >通常ではコマンドボタンは削除されない そんなはずはないのですが 試しに下記のマクロを実行してみてください Sub test() ActiveSheet.Shapes.SelectAll End Sub このマクロを実行して、選択状態になったものを すべて削除するようになってますよ

abuhiro
質問者

お礼

ありがとうございます。 通常ではボタンは削除されないみたいです。 理由はよく解りませんが・・・。 やはりカウントを使うのが良いみたいですね。 参考になりました。 m(__)m

関連するQ&A