エクセル・オートシェイプ(図形)の基本操作。VBAで図形を自在に変化させる!

エクセル・オートシェイプ(図形)の基本操作。VBAで図形を自在に変化させる!

「図形(オートシェイプ)」はあらかじめエクセルに組み込まれている図形描画機能のことです。長方形や円といった基本図形に加え、テキストボックスや吹き出し、ブロック矢印などの形があります。グラフや表の説明やデータの因果関係などを示すことができ、テキストも埋め込めるので、さまざまな資料を作成するのに役立ちます。

今回は、日常業務でエクセルを多用する筆者が、図形機能を使いこなすための手順や操作方法をご紹介します。

なお、Office2007以降まで、図形は「オートシェイプ」という名称でした。本記事ではOffice2010での操作方法を解説しますので、「図形」という表記に統一します。

 

図形の基礎知識と操作法

図形は「挿入」タブ内「図」グループの「図形▼」ボタンのメニューから選んで挿入します。

エクセルオートシェイプ解説画像

ここでは、基本的な操作方法・手順を解説します。

 図形を挿入してサイズ、角度を変える

実際にやってみましょう。「図形▼」ボタンから好きな図形を選んでください。

カーソルが「+」マークに変わるので、挿入したい位置でクリックすると図形が現れます。このとき、メニューは描画ツールの「書式」タブに変わります。

エクセルオートシェイプ解説画像

図形には8つのハンドルがついていて、大きさを自在に変えることができます。図形の種類にもよりますが、黄色の□が表示されていれば図形の一部のサイズや形を変えることも可能です。また、丸い矢印は、図形を回転するハンドルです。図形を移動させるときは図形の内側でクリックし、マウスでドラッグして位置を変えます。

 

図形の色や枠線を変える

色や枠線を変えるには、「書式」タブの「図形の塗りつぶし」「図形の枠線」などのボタンを使います。

エクセルオートシェイプ解説画像

タブが消えてしまった場合は、図形を選択するとまた現れます。

大体の操作はここで行えますが、テキストの挿入、図形のグループ化などを行う場合は、図形を右クリックしてさらに詳しいメニューを表示させます。

「テキストの挿入(X)」で書き込んだテキストのフォントやサイズ、配置を変える作業は「ホーム」タブで行います。

エクセルオートシェイプ解説画像

同じ図形をいくつも使うときは、作った図形をコピペすると効率的でしょう。

 

配置揃え・グループ化

複数の図形の配置を揃えるためには、対象となる図形全てを、Shiftキーを押したまま選択し、「書式」タブ右上にある「配置」ボタンから「中央揃え」「左揃え」などを選択します。

エクセルオートシェイプ解説画像

エクセルでは、パワーポイントにある「間隔揃え」ができないので、間隔を揃えたい場合は配置ボタンから「枠線に合わせる(P)」を選択し、エクセルの枠線を使って間隔を調整します。

「グループ化(G)」は複数の図形を一緒に扱うときに使います。

エクセルオートシェイプ解説画像

マウスによる複数選択と違い、そのグループの位置関係が保存され、まとめて全部動かしたり、色や枠線を同時に変更するときに便利です。ただ、グループ化した図形には「配置」ボタンが効かないので、配置を変更したい場合には、「グループ化」サブメニューの「グループ解除(U)」で一旦解除し、配置を整えたあとに再度「グループ化」します。

 

最後に、一度挿入した図形を他の種類を変える方法を説明します。

「書式」タブ左上の「図形の編集」ボタンから「図形の変更(N)」をクリックし、図形の一覧を出します。ここから使いたい図形を選択すると、元の図形と差し替わります。

エクセルオートシェイプ解説画像

元の図形に既に入力してあるテキストはそのまま残るので、入力し直す手間が省けます。

 

\文字より動画で学びたいあなたへ/

Udemyで講座を探す >

VBAで図形を挿入する方法

次は、VBAで図形を挿入してみましょう。簡単にできる方法があります。

※VBAについて詳しく学習したい人は、VBAについて解説した記事をご覧ください!

 VBAとは

VBAは「Visual Basic for Applications」の略で、エクセルやワードを自動操作するためのVisual Basicというプログラム言語です。VBAで作るプログラムのことを「マクロ」と言います。

 

VBAで図形を挿入する方法

例として、「右へ移動」という文字が入った右向きのブロック矢印を表示させる方法を解説します。

そもそも、VBAで図形を作成することによるメリットは何なのでしょうか?

VBAで図形を作成すると、「この図形(ボタン)をクリックすると、お店の売り上げを自動で計算する」といったような処理を自動でできるようになります。(これは例の1つです。)覚えておくとVBAを活用できる幅が広がるので、覚えておくといいでしょう。

では、さっそくVBAで図形を作成していきましょう。

まずエクセルのブックを開いた状態でAltキーを押しながらF11キーを押します。そうするとマクロを作るウインドウが現れます。初めて見る方も多いかもしれません。

エクセルオートシェイプ解説画像

図形を挿入したいシートを選択したら、出てくるウインドウ(コード・ウインドウ)に以下のテキストをそのままコピーしてみましょう。

 

エクセルオートシェイプ解説画像

このテキストのどこかにカーソルを置き、F5キーを押すと設定されているマクロを実行します。ブックに戻り、「右へ移動」の文字が入った右向きブロック矢印が現れているのを確認してください。

エクセルオートシェイプ解説画像

上記のマクロを簡単に解説すると、まず2行目は「アクティブシートに図形を加えなさい」という指示で、「msoShapeRightArrow」は右向きブロック矢印のこと、そのあとの4つの数字は図形を挿入する位置とそのサイズ(ピクセル単位)を指定しています。ブロック矢印はテキスト枠(TextFrame)でもあるので、3~6行目はその中にフォントサイズ14の「右へ移動」というテキストを入れる、という指示です。そしてTopとLeftはB2セルの上と左の縁に合わせて図形を配置するという意味です。この図形をクリックすると実際にそうなっていることがわかります。

このほか、マクロでは図形の外枠の線や色、塗りつぶし色を変更するなど、通常手動で行うエクセル操作が全て行えます。

 

ここで、別のシートに新しい図形を挿入してみましょう。

エクセル画面の下部にあるボタンをクリックし、新しいシートを追加します。

エクセルオートシェイプ解説画像

AltとF11でコード・ウィンドウを開いたら、左側の「VBAプロジェクト」で新しいシートの名前を選択します。(新規の場合は「Sheet2」と出る)

エクセルオートシェイプ解説画像

そこに、上記コードのmsoShapeRightArrow の部分を「msoShapeExplosion1」、さらに「右へ移動」のテキストを「Bang!」に変えてF5を押してみてください。

今度は爆発音を連想させる図形とテキストが現れたと思います。

エクセルオートシェイプ解説画像

 

VBAで図形を使いこなす!

VBAマクロは自分でコードを書かなくても実行することができ、定型的作業を効率的に行うことができます。

表示タブの「マクロ▼」ボタンを押し、「マクロの記録(R)…」を選択すると「マクロの記録」ウインドウが現れます。

エクセルオートシェイプ解説画像

「マクロ名(M):」に適当な名前を入れ、「マクロの保存先(I):」に「個人用マクロブック」を選びます。

エクセルオートシェイプ解説画像

これは全てのブックで使えるようにするためですが、そのブックのみマクロを有効にしたい場合、「作業中のブック」を選んでください。その上で「OK」ボタンを押すと、これから行う全ての手動作業がマクロとして記録されます。

 

例えば、日頃よく使う図形を挿入し、大きさや色などを整え、上の手順でテキストを入力してください。必要であればそれをコピーして、配置したい場所に移動し、これらをグループ化することもできます。一通りの作業が終わったら再び「マクロ」ボタンを押し、今度は「記録終了(R)」ボタンを押します。

これで記録が完了します。再びAltキー+F11キーでマクロのコード・ウインドウを見てみると、自動的にコードが記録されています。

ブックに戻り、新しいワークシートを開いて、そのコードを先程の手順と同じように(または「マクロ」ボタンで表示される一覧から、先ほど名前をつけたマクロを選択して)実行してみてください。記録した作業が全く同じように再現されていることがわかります。

 

写真や図など他のオブジェクトにも応用が可能

エクセルではほかにも写真や図など、ユーザーが自分で作成したり、他から引用したものを挿入する機能があり、今回お伝えした操作の多くは写真など他のオブジェクトにも応用できます。さらに、ワードやパワーポイントの図形の種類もエクセルとほぼ同じなので、同様の操作が行えます。

VBAを活用して、ぜひ図形の機能を使いこなしてみてください。