縦横のスペースが大きく取れ、画像貼り付け・画像加工に長けているExcelは、私用でも仕事でもメモを取るのに最適です。
しかし、例えばネットで調べた資料をスクリーンショットして画像メモとして貼付けた画像が大きすぎると感じるのは私だけではないはず。。。

画像が複数あると、あとで大きすぎる画像サイズを調整するのが手間なんですよね。
この記事では、瞬時に画像を小さくするマクロについて紹介し、ストレスなく画像メモを貼り付けていく方法を提案します。
Excelで大きすぎるスクリーンショット画像を小さくする方法
Excelはメモを取るには最高のツールと考えています。下のリンク記事では、6種類のメモソフトの中で、Excelがより良い理由をまとめています。
【仕事目線】最適な議事録、メモツール(ソフト、アプリ)の特徴や使い分けを整理してみた
Excelはメモのスペースとして縦横が大きく取れ、貼り付けた画像の調整や加工もすばやくできます。しかし、スクリーンショット画像をそのまま貼り付けるとサイズが大きいです。特に全画面のスクリーンショット画像になると、大きすぎて困ります。

この記事では、貼り付けた画像を素早く小さくする方法を2つ取り上げます。
- まとめて画像を選択し、一括でサイズを変更する
- マクロを使い、その都度 or 一括で小さくする
まとめて画像を選択し、一括でサイズを変更する

(1)ツールバーの『図形の形式』-『サイズ』部で数字を変える
(2)右クリックの『図の書式設定』で変える
(3)Ctrl + 1 で『図の書式設定』を呼び出して変える
【注意!】
1つの画像を選択してサイズ変更後、別の画像を選択してctrl+y(繰り返し)はできない

マクロを使い、その都度 or 一括で小さくする

この記事の目玉はマクロ紹介です。詳細は次から説明していきます。
Excelで画像を瞬時に小さくする(大きくする)にはマクロを組み込むのが便利
紹介するマクロをクイックアクセスツールバーに組み込む前提で進めます。その方が時短ができるからです。

クイックアクセスツールバーに登録されたコマンドは、クリックして発動でき、 Alt + 数字キー で ショートカットキーとして発動もできます。
クイックアクセスツールバーでショートカットキー化しておけば、1つの画像を瞬時に小さくもできるし、画像を選択して一括で小さくもできます。個人的にはメモを取りながらその都度小さくするスタイルを好みます。
ただしこのマクロにはデメリットがあります。
- ctrl+Zで元のサイズに戻せない ※どのマクロも実行後は元に戻せないので
- 縮尺度に自由度がない ※マクロで設定した縮尺度のみになる
これらのデメリットの対策として、元のサイズに戻す拡大マクロも同時に組み込み、縮尺度は小さくなりすぎない設定にする。ということをしています。

マクロ組み込み手順
アドインファイルを作成する
■新規作成し、拡張子を『.xlsm』で保存する。(今回は「画像10倍.xlsm」とした)

■ Alt + F11 でVBAを起動し、「画像10倍.xlsm」を右クリック – 挿入 – 標準モジュール

■コードを記入する。(下のコードをコピペしてください)

Sub x10() ActiveWindow.Selection.ShapeRange.ScaleWidth 2, msoFalse, msoScaleFromTopLeft ActiveWindow.Selection.ShapeRange.ScaleHeight 2, msoFalse, msoScaleFromTopLeft
End Sub
Sub x1_10() ActiveWindow.Selection.ShapeRange.ScaleWidth 0.5, msoFalse, msoScaleFromTopLeft ActiveWindow.Selection.ShapeRange.ScaleHeight 0.5, msoFalse, msoScaleFromTopLeft
End Sub
■ .xlsmファイルを上書き保存したら、名前を付けて保存から拡張子を『Excelアドイン(*.xlam)』に変更して保存する。

アドインファイルからコマンドを登録する
■ ホーム – オプション をクリック

■ アドイン タブの 管理部をExcelアドインにして 設定 をクリック

■ 先ほどのファイルの左にチェックを入れてOKで閉じる

■下図の①~⑤の順にクイックアクセスツールバーを追加していきます。

上図・右部の上から Alt+1、Alt+2、とショートカットキーになります。(この記事の例ではAlt+6が縮小でAlt+7が拡大です)

■ ⑥~⑧はアイコンの変更説明です。先ほどのクイックアクセスツールバー設定タブで、アイコンを変えたいコマンドを選び、変更 – 好きなアイコンを選んで OKで閉じる。

これでマクロが発動できる準備完了です。

画像縮小・拡大マクロの設定補足とファイルサイズも軽くする応用技
マクロの補足です。
画像サイズが縦横比固定になっているかで、縮尺度が変わる
Sub x1_10() ActiveWindow.Selection.ShapeRange.ScaleWidth 0.5, msoFalse, msoScaleFromTopLeft ActiveWindow.Selection.ShapeRange.ScaleHeight 0.5, msoFalse, msoScaleFromTopLeftEnd Sub
このマクロは、色付き字部の2行で構成されています。1行目は横幅の倍率設定(ScaleWidth)で、2行目が縦幅の倍率設定(ScaleHeight)です。

上図のように、画像サイズの設定が縦横比を固定するを適用する場合(チェックがある場合)、ScaleWidthを変更すると自動でScaleHeightも変更され、ScaleHeightを変更すると自動でScaleWidthも変更されます。
この記事の例では、マクロ1行目で縦横が0.5倍、マクロ2行目で縦横が0.5倍されるので、0.5倍×0.5倍(=0.25倍=1/4に縮小)されます。
よって、マクロ実行結果は、100mm角の画像が1/4のサイズの25mmに縮小(0.25倍)されています。

拡大する方も同じなので、倍率設定を「2」にしています。※2倍×2倍(=4倍)になり、0.25倍された画像が1に戻ります。
画像サイズの設定が縦横比を固定するを適用しない場合(チェックを外している場合)、マクロ1行目で横幅のみ0.5倍、マクロ2行目で縦幅のみ0.5倍され、実行結果は0.5倍になります。

縦横比固定のことを考えると少し刻んで縮小できる度合いにしておくのがよい
貼り付け時&画像圧縮&サイズ縮小を1工程でやってしまうマクロ
複数の画像を一括でサイズ縮小できないデメリットはありますが、
1工程で貼り付け⇒切り取り⇒JPEG形式で貼り付け⇒サイズ縮小をすることで、画像をできるだけ軽くしながら貼り付けていくマクロです。

下がコピペ用のコードです。
色付き部が追加になっており、Windows + Shift + s などで画面を切り取ったあと、このオプションマクロを発動させるだけで、画像を圧縮するJPEG形式にして大きさも縮小します。
Sub x10() ActiveWindow.Selection.ShapeRange.ScaleWidth 2, msoFalse, msoScaleFromTopLeft ActiveWindow.Selection.ShapeRange.ScaleHeight 2, msoFalse, msoScaleFromTopLeft
End Sub
Sub x1_10() ActiveSheet.Paste Selection.Cut ActiveSheet.PasteSpecial Format:="図 (JPEG)", Link:=False, DisplayAsIcon:= False ActiveWindow.Selection.ShapeRange.ScaleWidth 0.5, msoFalse, msoScaleFromTopLeft ActiveWindow.Selection.ShapeRange.ScaleHeight 0.5, msoFalse, msoScaleFromTopLeft
End Sub
別ファイルにある重い写真画像をコピーしておいて、このオプションマクロを発動させれば軽くなります。(写真によっては解像度が荒くなるので注意)
Excelのツールバー設定は保存しておこう
クイックアクセスツールバー、ツールバーの設定をカスタマイズしたら保存しておきましょう。PCを入れ替えた時や、トラブルでツールバーがリセットされた時にすぐに復元できます。
下のリンク記事に詳細解説しているので、よかったら見て下さい。
【Excel】ツールバー設定をバックアップすべき2つの理由!勝手に初期化されたりPCを替える時の解決策
方法をざっくりいうと、下のフォルダにあるファイルを保存するか、
■ファイルの場所:C:\Users\◎◎(ユーザー名)\AppData\Local\Microsoft\Office

オプション画面からエクスポートしてUIファイルを保存おきます。


Excelで画像付きメモを取る時に役に立つ、画像を瞬時に小さくする方法を紹介しましたが、いかがでしょうか?
調べた資料のスクリーンショット画像が大きすぎて邪魔!という問題は解消するはずです。
私はメモを取る時、サブモニターの方に資料を映して、メイン画面で作業をしますので、Excelに貼り付けた画像が大きすぎて困っていました。
全画面をスクリーンショットする場合、倍率設定は0.5倍 ⇔ 2倍設定が良いと考えます。もう少し細かく縮小していきたいなら0.7倍 ⇔ 1.4285715倍にしてください。
画質がおちますが、ファイルサイズを軽くするための圧縮もマクロに組み込めますので、お好みで設定してください。
記事内で紹介した関連リンク
【仕事目線】最適な議事録、メモツール(ソフト、アプリ)の特徴や使い分けを整理してみた
【Excel】ツールバー設定をバックアップすべき2つの理由!勝手に初期化されたりPCを替える時の解決策
おまけ
Excelテク集の目次は下の通り
(下のリンクから各項目に直接アクセスできます)
時短や快適さアップのテクニックが多くあります!!
最後まで見ていただき、ありがとうございました。
広告
広告
広告