エクセルで作る住所録

メニューへもどる


 エクセルで住所録を作っておくと、色々なソフトへデータを送れます。宛名印刷ソフトで作ったものは、そのソフトでしか使えないことが多いのです。 この住所録と、宛名印刷を一つのブックにまとめておくと便利です。

データベース型の表

 1行目に項目名を並べ、以下の行に同じスタイルでデータを並べ、1データ=1行にしたものを、データベース型の表といいます。
 住所録の基本データとして、図のような項目を列にします。1列目のNoは、後で並べ替えをしたときに、最初に作った順に戻すときのために入れておくと良いでしょう。
 見やすくするため、C3のセルを選び、ウィンドウメニューのウィンドウ枠固定を実行しておくと、これより左上の項目が、スクロールの際にも隠れません。

オートフィルタ

1行目にカーソルを置き、データメニューのフィルタ・オートフィルタを選ぶと、図のように各項目毎にボタンが並びます。
このボタンをクリックすると、データをふるい(フィルタ)にかけることができます。
備考欄などに種別を入れておけば、瞬時にふるい分けできます。

宛名印刷とのドッキング

 

 同じブックの別のシートに、葉書宛名印刷用の書式を作っておきます。
印刷に使うA1からH4の範囲を選択して、ファイルメニューの印刷範囲設定を実行します。

この印刷範囲外の所に、住所録データの氏名から住所3までのデータをコピーします。図のように、幅が狭くて表示されなくても構いません。 例では、A7からE7に1件コピーしました。

D3には=A7、H3には=C7というように、式を入れます。7行目に入ったデータが、 葉書の宛名のセルに入るようにします。 住所3が空欄の時、F3に0(ゼロ)が表示されることがあります。

このような場合は、F3に次のようなIF関数を入れます。
 =IF(E3<>””,E3,””)・・E3が空欄でないときはE3を、そうでないときは空欄に、という意味です。
または、書式で0を表示しない設定をしておいても良いでしょう。

オートマクロによる、マクロ作成

 例えば、sheet1に葉書宛名印刷、sheet2に住所録があるとします。
sheet2で、印刷したい人の名前のセルを選択し、ボタンを押すと、そこから右に5つのセルを選択し、これをコピーして、sheet1の A7にコピーする、という作業を自動化するとします。

sheet2のB5を選択してから、ツールメニューのマクロ・新しいマクロの記録を選択します。
ここからは、全て記録されるので失敗できません。shiftキィを押しながら、右カーソルキィを4回押してF5まで選択します。
これをコピーし、sheet1に移動し、A7を選択して貼り付けます。
ここで、マクロの記録を終了させます。

これで、図のようなマクロが記録されます。

マクロの編集

このようなマクロは、ビジュアルベイシック(VB)というプログラム言語で書かれており、これを自動的に生成するものが、オートマクロ機能です。
これは、エクセル95では、自動的に挿入されたmoduleシートに書かれており、すぐに確認できます。
エクセル97では、ツール・マクロ・マクロの編集で選択し、表示します。
実は、自動生成されたマクロは、修正しながら使わないと、思った通りに動いてくれないことが多いのです。
1行目を図のように直し、7行目を追加します。

自動生成されたマクロの1行目は、たまたまカーソルのあったB5からF5が選択されています。
これを、ActiveCell.Range(”A1:E1”).Selectと書き直すことで、 相対座標指示になり、「カーソルのあった場所から横へ5つ選択する」という意味になります。
VB言語は、オートマクロで作り意味を考えているうちに、何となく分かってきます。 初めから長い操作を記録させず、短く分けながらマクロを作り、後で一つにまとめる、というのも良い方法です。 いずれにしても、自動で作ったものは、使い道も限られます。マクロを表示し、カーソルを移動して半角で、スペルを間違えないように記入し、編集します。

マクロの実行・ボタンを作る

 マクロの実行は、ツールメニューのマクロ・マクロの実行でできます。ただし、このマクロは、住所録の 氏名欄のどこかにカーソルを置いてから実行しないと、エラーになります。

  いつもこの操作をするのは面倒だ・・、というとき、この操作をボタン化して、クリック操作で実行できるようにすることができます。

マクロが正しく機能することを確認したら、表示メニューでツールバーからフォームのツールバーを選びます。

左がエクセル97・右が95のものですが、ツールバーなので横一に表示されることもあります。

上から2列目左のボタンをクリックして、シートのどこかにボタンを作ります。大きさや位置は、後で変更できます。ただし、住所録のシート上に置かないと、使いにくいでしょう。

 ボタンができるとすぐに、このボタンをクリックしたときに実行するマクロを聞いてきます。 先ほど作ったマクロを選択します。

確定したボタンは、右クリックすると編集できます。ボタンの名前をドラッグして選択し、宛名印刷という名前を付け、大きさを調整して、B1の氏名欄に置いたものが、下の図です。
B列の名前を選択して、宛名印刷ボタンをクリックすると、宛名印刷データが作られます。
 このようにすれば、オリジナルな宛名印刷ソフトが作れます。マクロの作り方は、若干経験が必要ですが、 オートマクロで作って修正することで、比較的簡単に作れるようになります。

マクロは、エクセル95の方が作成も編集も、易しいようです。エクセル97は、関数もマクロも、ちょっと敷居が高くなったようです。エクセル95を使っている人は、 97にするまえに、是非マクロを習得しておくと良いでしょう。


メニューへもどる