目次

7 種類にズーム

今回は、ワークシートに挿入した図、画像にズームするマクロを作成してみたいと思います。

下記画像のようなエクセルファイルを準備してみました。

ワードアート、写真、埋め込みグラフ、オートシェイプ、フォームボタン、チェックボックスコントロール、埋め込み PDF オブジェクトを挿入してあります。

7 種類、計 8 個あります。

マクロ実行前の画面です。
マクロ実行前の画面です。

目次まで戻る

マクロの一例

下記のマクロを「Sheet1」で実行してみます。

Sub シェイプにズーム()

Dim a As Shapes '複数のシェイプ

Set a = Worksheets("Sheet1").Shapes '「Sheet1」にある複数のシェイプへの参照をセット

Dim b As Shape '単一のシェイプ

For Each b In a '複数のシェイプをループ

'ループの都度、変数 b に単一のシェイプが set されます。

Range(b.TopLeftCell, b.BottomRightCell).Select '単一のシェイプの左上から右下までのセル範囲を選択
ActiveWindow.Zoom = True '現在の選択範囲にズーム
MsgBox b.Name '単一のシェイプの名前を表示

Debug.Print b.Name; Tab; Range(b.TopLeftCell, b.BottomRightCell).Address '単一のシェイプの名前とセル範囲を出力

Next

'ループが完了すると、この行に来ます。

ActiveWindow.Zoom = 75 '75% ズーム

Range("A1").Select 'A1 セル選択

End Sub

目次まで戻る

実行結果

マクロを実行すると、単一のシェイプに順次ズームしていきました。

VBE のイミディエイトウィンドウに下記の内容が出力されました。

WordArt 1    $A$4:$G$14
WordArt 2 $O$24:$W$44
Picture 3 $C$21:$G$43
AutoShape 4 $M$3:$O$13
Chart 5 $R$4:$V$18
Button 6 $J$20:$N$27
CheckBox1 $H$9:$J$16
Object 10 $J$30:$L$39
「WordArt 1」とメッセージが表示されています。 「$A$4:$G$14」のセル範囲が選択されています。
「WordArt 1」とメッセージが表示されています。 「$A$4:$G$14」のセル範囲が選択されています。
「WordArt 2」とメッセージが表示されています。 「$O$24:$W$44」のセル範囲が選択されています。
「WordArt 2」とメッセージが表示されています。 「$O$24:$W$44」のセル範囲が選択されています。
「Picture 3」とメッセージが表示されています。 「$C$21:$G$43」のセル範囲が選択されています。
「Picture 3」とメッセージが表示されています。 「$C$21:$G$43」のセル範囲が選択されています。
「AutoShape 4」とメッセージが表示されています。 「$M$3:$O$13」のセル範囲が選択されています。
「AutoShape 4」とメッセージが表示されています。 「$M$3:$O$13」のセル範囲が選択されています。
「Chart 5」とメッセージが表示されています。 「$R$4:$V$18」のセル範囲が選択されています。
「Chart 5」とメッセージが表示されています。 「$R$4:$V$18」のセル範囲が選択されています。
「Button 6」とメッセージが表示されています。 「 $J$20:$N$27」のセル範囲が選択されています。
「Button 6」とメッセージが表示されています。 「 $J$20:$N$27」のセル範囲が選択されています。
「CheckBox1」とメッセージが表示されています。 「$H$9:$J$16」のセル範囲が選択されています。
「CheckBox1」とメッセージが表示されています。 「$H$9:$J$16」のセル範囲が選択されています。
「Object 10」とメッセージが表示されています。 「$J$30:$L$39」のセル範囲が選択されています。
「Object 10」とメッセージが表示されています。 「$J$30:$L$39」のセル範囲が選択されています。
75% ズーム後、 A1 セルが選択されました。
75% ズーム後、 A1 セルが選択されました。

目次まで戻る

テスト環境

  • Windows 10(64 ビット)
  • Microsoft Office Excel 2003

目次まで戻る

あとがき

マクロとは無関係ですが、ワードアートのグラフィックは拡大してもきれいに表示されていますね。

滑らかなグラデーションになっている。
滑らかなグラデーションになっている。

以上、閲覧ありがとうございました。

目次まで戻る

同じカテゴリの投稿(Excel VBA)

前後の投稿