- ベストアンサー
エクセルで大量のオートシェイプの直線・四角形を全て消したいのですが
ある方からエクセル形式のスケジュール表を引き継いだのですが何故か透明なオートシェイプの直線・四角形がスケジュール表の中に点在していて困っています。例えばある透明な四角形ボックスを選択すると名前ボックスに四角形3000などとでて到底消しきれる数ではありません。 またスケジュール表ごとコピーして新規作成してもそれもコピーされてしまうので意味がありません。一斉に消す方法はないのでしょうか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
一括で消すことは簡単に出来ます。 方法: (1)ツールバーの「編集」の「ジャンプ」を選択します。 (2)左下に「セル選択」のボタンをクリック (3)オブジェクトに選択し、「OK」を実行します。 これで、作成されている直線・四角・矢印などの図形などが全部選択され ますので、「Delete」 キーを押すと削除されます。
その他の回答 (5)
- imogasi
- ベストアンサー率27% (4737/17069)
>直線・四角形だけ 矢印付きも含めて消す。円も消す。円を含めないときは円の関連の If Left(myshp.Name, Len("Oval")) = "Oval" Then MsgBox "円" del = 1 End If を削除。 標準モジュールに、下記貼り付け。F5キーを押すと実行されます。 結構難しい。コメントあり、は下記で大丈夫のよう。 Sub test02() Dim myshp As Shape For Each myshp In ActiveSheet.Shapes del = 0 If Left(myshp.Name, Len("Line")) = "Line" Then MsgBox "線" del = 1 End If If Left(myshp.Name, Len("Oval")) = "Oval" Then MsgBox "円" del = 1 End If If Left(myshp.Name, Len("Rectangle")) = "Rectangle" Then MsgBox "四角" del = 1 End If If del = 1 Then myshp.Delete End If Next myshp End Sub
- marbin
- ベストアンサー率27% (636/2290)
>No.2さんの回答で解決できたのですが、これはマクロ?か何かでしょうか?よくわからないのですが M-SOFTさんが提示されたのはマクロです。 シェイプの種類を指定しての削除も可能です。 参考HPです。 http://www.asahi-net.or.jp/~zn3y-ngi/YNxv212.html
- marbin
- ベストアンサー率27% (636/2290)
横槍レスすみません。 M-SOFTさんのコードについてです。 myshap.Delete ↓ myshp.Delete ですね。 あと、コメントがあるとエラーになります。 マクロ実行時はエラーになりませんが、コメント のあるセルを選択すると強制終了になると思いま す。 シートにコメントがない場合は問題ありません。 失礼しました。
こんにちは。 直線と四角形だけでしょうか。 すべてのオートシェイプを消す方法です。 Dim myshp As Shape For Each myshp In ActiveSheet.Shapes myshap.Delete Next
補足
No.2さんの回答で解決できたのですが、これはマクロ?か何かでしょうか?よくわからないのですが
- ujikinsan
- ベストアンサー率45% (77/170)
ツールバーの所で右クリックか、表示→ツールバーで図形描画を選択します 図形描画のツールバーの所にオートシェイプの選択がありますのでクリックして消したい図形をドラッグして選択 Delete ボタンを押せば消去できませんか?
補足
もちろん消せますが上でも書いたように選択したとき名前ボックスに四角形三千何百とでることから3000以上透明なオートウェイプがあるというわけですのでいちいちクリックしてデリートをしていたのでは日が暮れてしまいます。
お礼
ありがとうございます。できました。