• ベストアンサー

エクセルの挿入画像を削除するツールまたはソフト

ファイルサーバ内に格納されているエクセルファイルの挿入された画像だけを削除して、上書き保存するツールまたはソフトウェアを探しています。 多数のエクセルを複数に指定して、動作できるものだと理想的です。 よろしくお願いいたします。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

>多数のエクセルを複数 どのくらい多数なのか問題ですね。環境に依存してエラーが出たりしなければいいんですが。 また、サーバーのフォルダー構造がどうなっているのか、サブフォルダーもサーチして処理を行いたい? さらに、この処理をいつ行えるのか気になります。バックアップを取ってテストを繰り返すことが必要でしょう。 >画像だけを削除 質問には「画像」とありますが、Excel VBAで「画像」を表すShape.Typeプロパティ・ShapeRange.Typeプロパティには30種以上のMsoShapeType列挙定数があります。いわゆるJPGなどの画像(msoPicture)はその一部で、グラフ(msoChart)やコメント(msoComment)、フォームコントロール、ActiveXコントロール(VBA)も画像扱いで、図形・オートシェイプは単体とグループ化されていれば別物です。 このような問題点があるので、何かツールまたはソフトがあっても、カスタマイズが必要でしょう。 現実的には、VBAで対応し、サーバーのフォルダー単位にパソコンに退避して一括で処理するんでしょうか。上手くいけばサーバーに戻すとか。しかし、LINKが張られていると怖い処理になりそうです。 参考のマクロですが、サーバーではなく、パソコン内のドライブのフォルダーを指定して「Excel VBA での画像全部」を削除して上書き保存しています。 テスト環境で実行してみてください。「グラフは残す」とか「コメントは残す」とかになれば、細かなコーディングが必要になります。MsoShapeType列挙定数はネットで調べられるでしょう。 当方、Win10、Excel2010です。ご参考に。 '// サンプル。自PC内のフォルダーを指定しています Sub wbAllShapesDelete()  Dim mainWB As Workbook   '// このワークブック   Set mainWB = ThisWorkbook  Dim elmWB_Path As String  '// 対象のフォルダー  Dim elmWB_Name As String  '// 対象のブック名(*.*)  Dim elmWB As Workbook    '// 開いたブック名  Dim getWB_Name As String  '// 対象のブック名  Dim s As Integer      '// シートカウンタ  Dim shp As Shape      '// Shapeオブジェクト   elmWB_Path = "N:\****\******"   elmWB_Name = "*.xls*"    Application.ScreenUpdating = False  getWB_Name = Dir(elmWB_Path & "\" & elmWB_Name)  While getWB_Name <> ""   Set elmWB = Workbooks.Open(elmWB_Path & "\" & getWB_Name)   With elmWB    For s = 1 To .Worksheets.Count     For Each shp In .Worksheets(s).Shapes      'If shp.Type = msoPicture Or shp.Type = msoAutoShape Then       shp.Delete   '// 全部消している      'End If     Next    Next    .Close SaveChanges:=True   End With        getWB_Name = Dir()  Wend  Application.ScreenUpdating = True End Sub

その他の回答 (1)

  • kon555
  • ベストアンサー率52% (1750/3357)
回答No.1

VBAが環境的に使用可能であれば、VBAでの対処が一番簡単でしょう。 ただサーバー上へのアプローチだと、ヘタに複数ファイル指定を可能にするのも怖いです。この辺りは、貴方自身がスキルをもっているなら手を出すのもいいですが・・・という所ですね。 また仮にスキルがあったとしても、一応サーバー管理者に相談の上で行った方がいいですよ。 一応、ブック単位であれば既にマクロを紹介しているページがあるためご紹介しておきます。 https://www.relief.jp/docs/excel-macro-delete-images.html

関連するQ&A

  • エクセルの挿入削除作業のあと、上書きできない

    よろしくお願いします。 Win XP EXL97 行の削除挿入作業のあとに上書き保存ができなくなってしまいました。 上書きしようとすると、サーバーに報告しますか?メッセージが出ます。 普通に使っていただけなのに急にこのようになってしまいました。 原因はなんでしょうか? また、おかしくなったファイルは元に戻せますか? 削除挿入以外の作業のあとには上書き保存可能です。

  • Excelに挿入した元の画像を削除して良いのか?

    パソコンの画面をスクリーンショットして、ペイントに貼り付けて編集し、その画像をExcelファイルに挿入しました。 こうして挿入した画像の元画像を今はフォルダに保存しているのですが、これらを削除しても、以後このExcelファイルを印刷することはできるのでしょうか?削除してしまうと、その画像部分は空白になって印刷されてしまうのでしょうか? 挿入する画像の数がとても多いため、可能なら保存しておかずに削除したいです。 どなたか分かる方がいらっしゃれば、教えていただきたいです。 どうぞよろしくお願いいたします。

  • エクセルに挿入した画像を取り出す方法

    親が複数の写真をエクセルに挿入していて、 そのファイルをみつけたのですが、元の画像が見つからないのです。 そこで、そのエクセルの画像を保存したいのですが、方法が分かりません。 教えてください。 急ぎなのでよろしくお願いします。

  • エクセルのブック共有機能について

    初歩的な質問で申し訳ありません。 エクセルのブック共有の機能は、 エクセルファイルを共有サーバーからローカルに落として、 編集・上書き保存後、共有サーバー上のファイルに上書きした場合、 他の人が別のタイミングで上書きした変更履歴は削除されるのでしょうか? (状況が上手く説明できなくて申し訳ありません。) 「ブックの共有」が、共有サーバー上のファイルを同時に複数人が編集するということが前提なのでしょうか? そもそもやりたい事は、 1つのエクセルファイルを 複数人が個別に編集しても、それぞれの内容を正しく保存され、 最新の状態でサーバー上に保存できる方法を探しています。 ※公開方法としては、共有サーバー上にファイルを保存しています。 ※クライアント側のエクセルは、2000、2002、2003とバージョンが異なります。

  • エクセル97で画像の挿入が出来ない。

    エクセルのシートに画像を挿入したいのですが、「挿入」「図」「ファイルから」と進んで当該ファイルを指定しても「プレビューが表示できません」とメッセージがでて実行ができません。 以前は出来ていたのですが、このような状態になる要因は何でしょうか。よろしくお願いいたします。

  • LAN環境でのファイル削除の禁止

    LAN環境でファイルサーバー(Win2000server)を設けております。 「クライアント側からのファイルやフォルダの新規作成・上書きは可能であるが、削除は禁止する」ような設定というのは可能でしょうか? ネットワーク経由で削除すると、当然ごみ箱にも行かず削除されてしまいますので、必要なファイルを誤って削除されないようにしたいのです。 サーバー側のフォルダでセキュリティのアクセス許可を用い削除禁止にしましたが、ExcelやWordのファイルを上書き保存しようとすると、応答しなくなってしまいます。 これらのアプリケーションの上書きプロセスには「削除」という動作が必要なため、不具合の出る可能性があるとの雑誌記事を読みました。 皆さんのところではどのように対応されているのでしょうか?

  • EXCELにjpg画像を挿入すると真っ黒

    ECXELにJpgの画像を挿入(ファイルから)すると、画像の枠内が真っ黒になって挿入される。WORDでも同じ。この同じjpg画像をWINDOWS(XP)のプレビュー画面に出して「右クリック-編集-jpgで上書き保存」としてから、再度EXCELにJpgの画像の挿入を実行すると、今度は黒くならない。どうやらEXCELで正常に読めないjpgになっているという事らしいけれど、なぜこうなったのかわからない。この現象は、先週ハードディスクが故障して、取り替えて、WINDOWSもMS-FFICE2000もPHOTOSHOPも再インストールしてからのことです。以前は普通に挿入できていました。どうしたら直るのでしょうか?困っています。教えてください。よろしくお願いします。

  • エクセルに画像を挿入する

    ご覧いただきありがとうございます。 2つ質問があるのですがよろしくお願いします。 環境はWin2000、Excel2000です。 質問1 画像(JPG、300k)をエクセルに貼り付ける段階で、大きさを指定できないでしょうか? (画像解像度、エクセル使用の指定があるため他のソフトを使用するといった方法がとれません。また、大量の写真を貼り付ける為、例えばエクセルに枠を作っておいてそこに貼り付けていくだけという作業をしたいのです。) 質問2 エクセルのツールバー (1)「挿入」→「図」→「ファイルから」→BMPの貼付 (2)「挿入」→「オブジェクト」→「ファイルから」→BMPの貼付 (1)と(2)はどう違うのでしょうか? たいした質問ではないと思うのですが困っています。 よろしくお願いします。

  • エクセルでの挿入での質問をします。  お願いします

    現在エクセルで「書いた文章&表の所」(ファイルAとします)に「異なる名前で保存したエクセルの文章と表」(ファイルBとします)を挿入したいと思っています。 今現在試した方法は、ファイルAで上のバーの「挿入」-「オブジェクト」-「ファイルの指定」でファイルBを選び挿入したのですが、ファイルAのプレビューで見ると挿入したファイルBのエクセルの線が写ってしまう感じに見えます。 なぜでしょう・・・?何か間違っていますか? ファイルBのエクセルの線が写らないようにするにはどうしたら良いでしょうか?

  • エクセルの複製が削除出来ない!

    エクセルで、上書き保存をすると、どんどん複製が出来てしまって削除出来ません。エラーの理由はディスクがいっぱいか、書き込み禁止になっていないか。ですが、ディスクも挿入していないし、禁止にもしていません?どなたか解決策を知りませんか?

専門家に質問してみよう