Excel VBA質問箱 IV

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

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


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

【26567】図形を削除したい funnn 05/7/10(日) 16:23 質問[未読]
【26570】Re:図形を削除したい kobasan 05/7/10(日) 16:50 回答[未読]
【26572】Re:図形を削除したい bykin 05/7/10(日) 19:47 回答[未読]
【26574】Re:図形を削除したい kobasan 05/7/10(日) 20:53 発言[未読]
【26593】Re:図形を削除したい funnn 05/7/11(月) 16:33 お礼[未読]

【26567】図形を削除したい
質問  funnn  - 05/7/10(日) 16:23 -

引用なし
パスワード
   マクロの記録と参考書の丸写しくらいしかできない初心者で、
EXCELのバージョンは2002です。

マクロを起動した時、前回の図形が残っている時があるので、
作業前に黒板を黒板消しで消すような事をしたいのですが、
マクロの記録では白矢印をドラッグして範囲選択しても、各々
の図形を選択して消去するようなコードなので、使えません。

図形と言っても丸、三角、直線くらい使用の簡単なのものです。

よろしくお願いいたします。

【26570】Re:図形を削除したい
回答  kobasan  - 05/7/10(日) 16:50 -

引用なし
パスワード
   ▼funnn さん  今日は

Sub Macro1()
Dim ws As Worksheet
Dim shp As Shape
  For Each ws In ThisWorkbook.Sheets
  For Each shp In ws.Shapes
    shp.Delete
  Next
  Next
End Sub

これでできると思います。

【26572】Re:図形を削除したい
回答  bykin  - 05/7/10(日) 19:47 -

引用なし
パスワード
   こんばんわ。

kobasanはん、
Shapeオブジェクトを無条件に全部削除するコードはファイル破損の元でっせ。
例えば入力規則の▼ボタンなんかも削除されてまいます。
こうなると復旧不可能でファイルを作り直すしかないんですわ。

こういう場合は隠しオブジェクトのDrawingObjectsを使ったらええと思うよ。

ActiveSheet.DrawingObjects.Delete

なんて感じ。
図形のみを無条件で全部削除するんなら、ループで回す必要はありまへん。

試してみてな。
ほな。

【26574】Re:図形を削除したい
発言  kobasan  - 05/7/10(日) 20:53 -

引用なし
パスワード
   ▼bykin さん こんばんわ。

>例えば入力規則の▼ボタンなんかも削除されてまいます。
>図形のみを無条件で全部削除するんなら、ループで回す必要はありまへん。
>こういう場合は隠しオブジェクトのDrawingObjectsを使ったらええと思うよ。

知りませんでした。この勉強忘れません。

ありがとうございます。

【26593】Re:図形を削除したい
お礼  funnn  - 05/7/11(月) 16:33 -

引用なし
パスワード
   kobasanさん、bykinさん早々のご回答有り難うございます。
お礼が遅くなり申し訳ありませんでした。

kobasanさんのご回答は勉強不足で、どのような動きになる
か見当がつかないので、まだ試していません。

bykinさんのご回答は分らないなりにも、なにか希望通りの
動きをしてくれそうな気がしたので、試したところどんぴ
しゃりでした。

お二方とも本当に有り難うございました。 また、もっと勉
強してkobasanさんのコードも理解できるよう努力したいと思
いますので、今後ともよろしくお願いいたします。

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