それではテーマを元に戻しまして、例の表について、5人ずつまとめて表示するために、5行おきに行挿入したいと思います。
大きな表にでも対応できるように、最初に ユーザーに何行分のデータがあるのかを確認して、その情報を参考にするとします。そのようなマクロを作成したい場合は、以下の手順で行います。
再掲[Sheet1]
A | B | C | |
1 | 番号 | 名前 | 生年月日 |
2 | 001 | AAさん | 1975/10/9 |
3 | 002 | ABさん | 1975/9/23 |
4 | 003 | ACさん | 1974/8/5 |
5 | 004 | ADさん | 1966/3/2 |
6 | 005 | AEさん | 1962/2/19 |
7 | 006 | AFさん | 1966/4/23 |
8 | 007 | AGさん | 1974/6/11 |
9 | 008 | AHさん | 1948/10/11 |
10 | 009 | AIさん | 1974/12/6 |
11 | 010 | AJさん | 1964/11/11 |
12 | 011 | AKさん | 1957/1/3 |
13 | 012 | ALさん | 1954/11/17 |
14 | 013 | AMさん | 1947/4/18 |
15 | 014 | ANさん | 1970/6/15 |
16 | 015 | AOさん | 1968/5/26 |
17 | 016 | APさん | 1969/4/3 |
18 | 017 | AQさん | 1963/1/9 |
19 | 018 | ARさん | 1947/11/19 |
(1)前回使用したファイルを開きます。前回保存していなかった方は、前々回ご紹介した手順でまずマクロを生成してください。
(2)[ツール(T)]→[マクロ(M)]→[マクロ(M)]。
(3)「マクロ」ウィンドウのマクロ名「行挿入」を選択して「編集(E)」。
(4)「ガイドシート(手順4)」のように直接編集。意味は以下の通り。
・Dim gyou As Integer:gyouという変数を今後整数として使用します。
・gyou = ActiveCell.Row:とりあえずカーソルのある行ナンバーを gyou という変数に入れます。例えば5行目にカーソルがあれば gyou=5 となります。
・Rows(gyou).Select:gyou行を選択します。gyou=5であれば、5行目を選択します。
・Selection.Insert Shift:=xlDown:選択されている行に一行挿入します。
ということは、行挿入したい行のどこかのセルにカーソルを置いてこのマクロを実行すれば、自動的に行挿入ができる、ということです。
(5)手順(4)までの動作を確認したら、続けて「ガイドシート(手順5)」のように編集。意味は以下の通り。
・Dim act, gyou As Integer:gyouという変数とactという変数を今後整数として使用します。
・act = InputBox("全部で何行?", "How Many Rows"):「How Many Rows」というタイトルのダイアログボックスで、「全部で何行?」という質問を表示させ、ユーザーからの回答をactという変数に入れます。
(6)[ツール(T)]→[マクロ(M)]→[マクロ(M)]として出て来る「マクロ」ウィンドウのマクロ名「行挿入」を選択して「実行(R)」。「全部で何行?」と聞いてくればOKです。ここで入力する数値は次回具体的に使用していきたいと思います。
<<ガイドシートURL>>
http://www.tcat.ne.jp/~ryu/PLE/Macro/52.pdf