VBAを用いた住所録の作成

今田良子 上野浩子 岡村朋子 岡村美奈子

吉良佳小里 中川浩志 西山早紀

(指導教員:中島信恵)

 

はじめに

 VBAとは「Visual Basic for Applications」が正式名称で 通常は略してVBAと呼ばれています。VBAを一言でいってしまうと、Microsoft社のOffice製品など主要なアプリケーションに搭載されているプログラミング言語、 ということになります。Microsoft社には、「Visual Basic(VB)」というWindows上で動作するアプリケーション開発用のプログラミング言語があり 、それをアプリケーションレベルで動作するようにアレンジしたものがVBAなのです。 私たちはVBAを用いて住所録システムを作成し、ハガキに宛名を印刷する機能を追加しました。


住所録システムについて


 このシステムは、ユーザーフォームを利用して、住所録データを管理・検索するシステムです。住所録を管理するExcelのワークシートとワークシートのデータを編集するためのユーザーフォーム(住所録編集ダイアログ)を下の図のように作成しました。 ブックを開いた時にワークシートにデータが入力されていれば、最初のレコードをユーザーフォームに表示します。ワークシートはタイトルと氏名、フリガナ、カタカタなどの項目名を入力し、シート名を”住所録”に変更しました。 住所録編集ダイアログは、図のように、ボタンやテキストボックスなどの部品(コントロール)を配置しました。コントロールには、名前や漢字変換モードなどの設定(プロパティの設定)を行い、コマンドボタンには、そのボタンがクリックされた時に行う処理(プロシージャ)を記述しました。 ワークシートとユーザーフォームとのデータの関連は矢印の通りです。




 ”検索ボタン”がクリックされた時には、データを検索する際に利用する、ユーザーフォーム(検索ダイアログ)を作成しました。検索する文字列に例えば鈴木を入力し、”検索ボタン”をクリックすると検索結果が下のリストボックスに表示されます。”次を検索ボタン”をクリックすると次に該当するデータを検索します。 該当するデータが一件も見つからない場合や検索文字列が入力されていなかった場合には、そのことを示すメッセージボックスを表示します。探しているレコードが見つかり”OKボタン”をクリックすると住所録編集ダイアログにその人のデータを表示します。



宛名印刷  

 ハガキに宛名を印刷するには、まず、住所録シート(名前、フリガナ、性別など)の1人分(ex:磯部健 いそべ・・ 男 ・・・)のデータを 選択しコピーします。次にシート3の仮の場所にコピーしたデータを貼り付けます。そして、仮の場所からシート3のハガキ領域の場所にコピーします。

 上の@〜Bの処理は以下のプログラムです。


 ハガキに印刷すると、このようになります。

おわりに

 住所録システムをカスタマイズして自分に合わせたシステムを作ってみたり、さらに高度なプログラミングに挑戦してみたいと思います。



参考文献

著者/内田 清明:「Excel2000 VBAステップアップラーニング」技術評論社(2000)