開発作業用グループ「A1選択」の解説
- yuji fukami
- 6 日前
- 読了時間: 4分
概要
書籍「Excel VBA開発を超効率化するプログラミングテクニック」の特典であるIkiKaiso2.xlamのリボン登録マクロの解説のための特設ページです。
出版社の書籍のページ⇒https://gihyo.jp/book/2024/978-4-297-14023-6
リボン登録マクロ全体解説ページ⇒https://www.softex-celware.com/post/ikikaiso2
本ページではIkiKaiso2.xlamの「開発作業用」グループの「A1選択」の解説をします。

解説
用途
起動中のExcelブックにおいてすべてのシートでA1セルを選択する
表示したExcelブックを確認する際の最初の操作として利用
誰かに渡すExcelブックをA1選択状態にするマナーに対応

使い方
実際に使っている様子の動画を下記でご確認ください。
手順は簡単で「A1選択」をクリックするだけで、起動中のブックのすべてのシートでA1セルが選択状態になります。
技術解説(ソースコード)
「A1選択」に登録してあるマクロのVBAコードを以下に記載しておきます。
使用しているプロシージャは「SelectA1」ですが、下記のような操作を行っています。
最初に表示中のシートを取得しておいて最後にもとのシート表示状態に戻す
表示中のシートのみを対象としてエラーを回避する
スクロールも1にすることで、ウィンドウ枠固定が設定してあっても左上全体が表示されるようにする
最後に確認メッセージを表示する
ここで確認してほしいのが2つのOptional引数「Book」「Opt_Message」がある点です。
こちらはそれぞれ説明すると
Book → 処理対象のブック。省略ならActiveWorkbook(起動中ブック)
Opt_Message → 最後にメッセージを表示するかどうか。省略ならメッセージを表示する。
これら引数は、SelectA1を他で汎用的に利用する目的で作られていて、具体的に「ブックの終了時に自動的にA1選択状態にする」ような機能をマクロ付ブックに設定したい場合は、Thisworkbookのコードウィンドウに終了時イベントプロシージャ「Workbook_BeforeClose」内に次のようなコードを記述で利用できます。
「SelectA1」プロシージャの引数設定は次のようにしています。
Book → ThisWorkbookで自ブックを対象とする
Opt_Message → Falseとしてメッセージは表示しないようにする(毎回表示すると鬱陶しいから)
このような感じで用途に合わせて別で利用できるようにも設計しています。
解説(A1セル選択のメリット)
A1セル選択についてはExcelを扱う上での世間一般的なマナーとして知られているものでもありますが、一つかみ砕いてそのメリットを説明しておきます。
メリット1: ブック内容を確認・比較する際の利便性
複数シートを持つブックを開いたとき、各シートで異なるセルが選択されたままだと、
内容を確認しようとするたびに視点がバラバラになり、比較や確認作業の効率が下がります。このマクロを実行して 全シートをA1セルに統一 しておけば、
どのシートを開いても同じ位置からスタートできる
シート間のレイアウトやデータ構成を並行して比較しやすい
初見のブックでも全体を俯瞰しやすい
といった利点があります。
特に、他人が作成したExcelブックの構造を確認する際に「まずはA1から整える」ことで、
すっきりとした見通しを得られます。
メリット2: Excelブックを他人に渡す際のマナー
先ほども言及しましたが、業務でExcelファイルを共有する際、全シートをA1選択状態で保存するのは1つのマナーとして知られています。
なぜなら、受け取った相手がブックを開いた瞬間に、
不自然に途中のセルや行が選択されていない
スクロール位置がバラバラになっておらず、全体が見やすい
ファイルを初めて開いた相手にも「整った印象」を与える
といった配慮が伝わるためです。実際、社内共有やクライアントへの納品物などでは、「A1セルにそろえる」だけで資料の完成度が一段上がった印象になります。
補足
以上のようなマナーやメリットのために「全部のシートを1つずつ開いてA1セルを選択」という作業を毎回やる人もいると思いますが、「A1選択」はそのような作業を一瞬で終わらせる機能となります。

コメント