- 締切済み
オートシェイプを画像ファイルで保存
※Excel2003VBAです オートシェイプを画像ファイル(BMP,PNG,jpgなど)のファイルに保存するVBAを探しています。 そもそもExcelの通常作業でも出来ないのでマクロの記録も出来ません。 サイトでもよいので教えていただけますか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
noname#187541
回答No.1
こんにちは。 オートシェイプを画像ファイルとして保存するのは通常操作で可能です。 ファイル→Webページとして保存 を使います。 Webページとして保存を行うとファイル名.filesという名前のフォルダが作成され、その中に画像ファイルが出来ます。 ただし、この操作を「マクロの記録」で記録しても直接画像ファイルにする記述が記録されるわけではありません。 結果として出来上がると言うことなので、マクロで使うとすれば出来上がった画像ファイルをコピーしてどこかに取り出してからファイルを削除する、という方法になるかと思います。 どうでしょうか。
お礼
確認遅れて申し訳ございません。 Webページ保存という形でマクロの記録ですがやってみました。 Sub Macro1() ActiveSheet.Shapes.AddShape(msoShapeRectangle, 147#, 134.25, 74.25, 43.5). _ Select ActiveSheet.Shapes.AddShape(msoShapeRectangle, 188.25, 200.25, 86.25, 40.5). _ Select ActiveSheet.Shapes.AddShape(msoShapeRectangle, 268.5, 132.75, 72.75, 50.25). _ Select ActiveSheet.Shapes.AddShape(msoShapeOval, 208.5, 79.5, 45.75, 45.75).Select ActiveSheet.Shapes.Range(Array("Rectangle 1", "Rectangle 2", "Rectangle 3", _ "Oval 4" _ )).Select Selection.ShapeRange.Group.Select ChDir "T:\" '↓HTML方式で保存 FileFormat:=xlHtml ActiveWorkbook.SaveAs Filename:="T:\htmlSave.htm", FileFormat:=xlHtml End Sub で、T:\htmlSave.files\image001.gifが出来るのでそれをコピーするなりすればいいですね。 ありがとうございました。