Excel VBA質問箱 IV

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

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


10109 / 13646 ツリー ←次へ | 前へ→

【23555】図の圧縮について やまもと 05/3/28(月) 9:57 質問[未読]
【23596】Re:図の圧縮について G-Luck 05/3/29(火) 17:11 発言[未読]
【23606】Re:図の圧縮について こうちゃん 05/3/30(水) 8:53 発言[未読]
【23631】Re:図の圧縮について やまもと 05/3/31(木) 10:44 お礼[未読]

【23555】図の圧縮について
質問  やまもと  - 05/3/28(月) 9:57 -

引用なし
パスワード
   お世話になります。
初級者です。どうぞ、よろしくお願いします。

シート内にたくさんのjpg(写真)がたくさん張ってあり、ファイルサイズが異常に大いいので、図の圧縮を行うと、サイズが小さくなるということがわかったので、
大量に、ファイルがあるので、自動記録でとってみました。

本題
自動記録では、図の圧縮内の細かい設定(解像度の変更)が、記録されていないようで、
違うファイルで下記の自動記録で実行しても、細かい設定が反映されません。

どなたか、教えてください。

Sub 図の圧縮()
' Macro8 Macro
' マクロ記録日 : 2005/3/28 ユーザー名 : yamamoto
  ActiveSheet.Pictures.Select
  Selection.ShapeRange.PictureFormat.Brightness = 0.5
  Selection.ShapeRange.PictureFormat.Contrast = 0.5
  Selection.ShapeRange.PictureFormat.ColorType = msoPictureAutomatic
  Selection.ShapeRange.PictureFormat.CropLeft = 0#
  Selection.ShapeRange.PictureFormat.CropRight = 0#
  Selection.ShapeRange.PictureFormat.CropTop = 0#
  Selection.ShapeRange.PictureFormat.CropBottom = 0#
End Sub

【23596】Re:図の圧縮について
発言  G-Luck  - 05/3/29(火) 17:11 -

引用なし
パスワード
   ▼やまもと さん:

誤解を恐れずいいますと。
Excel VBAでは実現できないようです。

【23606】Re:図の圧縮について
発言  こうちゃん  - 05/3/30(水) 8:53 -

引用なし
パスワード
   やまもと さん、G-Luck さん、こんにちは

G-Luck さんのおっしゃるように、解像度に変更はVBAでは
難しいと思います。

直接の回答ではありませんが、画像形式をJPGにして、
サイズを適正にすると、ファイルサイズは小さくなります。

ビットマップを貼り付けて、ドラックで表示サイズを小さく
してあった場合(画像の倍率を100%以下に指定していた場合)、
以下のようにするとかなりファイルサイズは小さくなります。

  ActiveSheet.Shapes("Picture 1").Select
  Selection.Cut
  ActiveSheet.PasteSpecial Format:="図 (JPEG)", _
  Link:=False, DisplayAsIcon:=False

この場合、あらかじめ図の位置を取得しておいて、元に戻す
必要がありますが・・

【23631】Re:図の圧縮について
お礼  やまもと  - 05/3/31(木) 10:44 -

引用なし
パスワード
   ▼G-Luck さん
▼やまもと さん:
VBAでは無理ということですか。。。。。

いい勉強になりました。
ありがとうございました。

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