• ベストアンサー

VBA 図の削除

お世話になります 図の一括削除ですが、あらかじめ決めておいた拡張子だけを 一括削除したいのですが可能ですか? たとえば、jpg、bmpのみ削除みたいに・・・・宜しくお願いします

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.3

> しかしシートに貼り付けられた時点で拡張子は存在しなくなる? そうですよ。 > ActiveSheet.DrawingObjects.Delete > を実行すると登録ボタンも削除されるというもので困っています。 図形だけを消して、ボタンを残せばいいのですね。 それなら ボタンがフォームのボタンなら ActiveSheet.Pictures.Delete ボタンがコントロールツールボックスのボタンなら Dim Pic As Object For Each Pic In ActiveSheet.Pictures   If TypeName(Pic) = "Picture" Then Pic.Delete Next で如何でしょうか。 Pictures は、隠しオブジェクトになっていてヘルプでは、解説が表示されません。

BSR123
質問者

補足

きゃーー ありがとうございます 30秒で解決しました。

その他の回答 (2)

回答No.2

'もとい、VBAの話ですね。失礼失礼。 '参考 'http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_100.html 'Sheet1 Option Explicit Sub hoge() UserForm1.Show End Sub 'UserForm1 TextBox1とCommandButton1があるものとする '面倒くさかったから書かなかったが,場合によってはコモンダイアログを '利用してフォルダ名を取得しよう Option Explicit Private Sub CommandButton1_Click() Kill UserForm1.TextBox1.Text & "*.txt" End Sub '事前にC:\fuga\に沢山txtファイルを作っておく。 'バグがないかどうか確かめるためにhoge.bmpというファイルも置いておいた 'C: テキストボックスにC:\fuga\と入力したら上手く行った。 'ただしフォルダが無かった場合とかは検証してないので自分で書くこと。

BSR123
質問者

補足

申し訳ありません ファイルではなくエクセルのシートの写真を拡張子別で削除したかった のが現状です。 言葉足らずですみません しかしシートに貼り付けられた時点で拡張子は存在しなくなる? どうすればいいのやら困っています。 尚、障害となっているのは ActiveSheet.DrawingObjects.Delete を実行すると登録ボタンも削除されるというもので困っています。 ツールバーのボタンにしても名前を付けて保存するとうまく動きません。保存先のマクロにかわっている? どうにかなりませんか?

回答No.1

コマンドプロンプトで cd C:\hoge のようにカレントディレクトリを変更して del *.jpg ↓くれぐれもこういうのには注意 http://www.atmarkit.co.jp/fwin2k/itpropower/admin-kun/027/adminkun027.html

関連するQ&A