郵便番号データDB変換の説明
[起動・終了}
[郵便番号検索データベース作成]
[データベースファイル]
|
起動
郵便番号データDB変換は、ExcelのVBAを使って作成されていますので、起動時には、Excelにて下記のようなマクロの有効/無効の選択のメッセージボックスが表示されるます。
必ず、[マクロを有効にする(E)]を選択(クリック)
して下さい。 有効にしない場合は必要な処理が実行されません。
(表示されるウインドウの形や内容は、OSやExcelのバージョン、起動時の操作方法などにより異なる)
起動されると、通常のExcel状態とは異なり、シートが表示されたExcel本体の表示は行われず、下記のフォームのみが画面に表示されます。
1 [郵便番号検索データベース作成]のボタン
郵便番号変換用のデータベースファイルを作成するための新規・追加・更新・分割の処理を行う場合に選択(クリック)する。
使用するデータは、郵政公社の住所の郵便番号のダウンロードサービスのホームページで公開されている郵便番号データファイルをダウンロードして用意する必要があり、このフォーマットで展開するようになっている。
2 [終了]のボタン
通常と異なりExcel本体が表示されていないので、フォーム上の[終了]のボタンをクリックする事で終了する。
|
郵便番号検索データベース作成 [↑ページの先頭]
[郵便番号検索データベース作成]のボタンをクリックすると、初期起動の場合には下記のフォーム1、既に作成されている場合にはフォーム2が表示され、郵便番号から該当の住所に変換するためのデータベースファイルを作成するための新規・追加・更新・分割の各処理が行える。各処理は、
新規 : 新規にデータベースファイルを作成する場合の処理。(最初はこの処理)
追加 : 新たな都道府県のデータを追加する場合の処理。
更新 : 既に登録済みの都道府県のデータを更新する場合の処理。
分割 : 複数の都道府県のデータが入っているCSVデータを、各都道府県のデータに分割する場合の処理。
のようになっており、操作はまず、実行したい処理のオプションボタンをクリックした後、[参照]ボタンをクリックして登録する都道府県のCSVデータを指定し、その後[実行]ボタンをクリックすることで該当の処理が実行される。
●フォーム1
初期起動の場合の表示フォーム。
初期の場合には、
・新規
・追加
・分割
の処理が行える。
|
●フォーム2
既にデータベースファイルが作成されている場合の表示フォームで、現在の各都道府県の登録状態が表示され、このフォーム例では、
北海道と沖縄
が登録されている。
このフォームでは、
・追加
・更新
・分割
の処理が行える。
|
1 新規
「新規」のオプションボタンをクリックした後、まず、登録する郵便番号の都道府県のデータを「郵便番号のCSVファイル」の位置に直接入力するか、[参照]をクリックして登録する都道府県のデータを指定する。[参照]をクリックした場合は、下記のようにWindowsのファイルを「開く」を行った場合と同じフォームが表示されるので、普段行っている操作と同じ、該当のファイルを選択して[開く]をクリックする。
このフォーム表示はWindowsのバージョンによって異なる。
この表示例では、全ての都道府県が含まれているファイルと、「分割」を実行した後に作成された、各都道府県のデータがある状態。
|
クリックされると、下記の選択したファイルで良いかの確認メッセージが表示されるので、処理を選択する。
[はい(Y)] : 選択したファイル名でよい場合。
[いいえ(N)] : 中止または、違うファイルを選択する場合。
[はい(Y)]を選択した場合、フォームに選択したファイル名が表示されると共に、フォームの下側に選択されたファイルのデータが決められたフォーマットかのチェックを行っているメッセージが表れ、問題が無い場合はチェックが終了すると表示が消え、問題がある場合はエラーメッセージが表示されるので、再度ファイルの選択から行う。(メッセージの右側にチェック中のカウントが100件ごとに更新表示され。チェックの処理時間は全ての都道府県を含んだデータの場合、CPUの性能によって異なるが、少し時間がかかります。(参考 CPU 2.4GHzで約10秒))
チェックが問題なく終了した場合は、次に、実際にデータベースに登録するための[実行]をクリックする。クリックされると、下記のような登録処理中のメッセージがフォームの下側に表示され、問題無く登録が終了すると、下記のような「[新規]処理が完了しました。」のメッセージが表示される。これにて、起動されたフォルダに、「郵便番号DB.mdb」というデータベースファイルが作成されており、登録された都道府県の郵便番号から住所変換が可能となる。(登録の処理時間は、全ての都道府県の場合、参考 CPU 2.4GHzで約40秒)(フォーム1の状態で[更新]で[実行]を繰り返した場合、最後に実行した都道府県のデータのみが有効となる。)
|
2 追加
都道府県ごとに登録して使用している場合に、新たな都道府県のデータを追加して登録したい場合の処理で、ファイルの選択から登録までの基本的な操作は[新規]と同じで、既に登録されている都道府県のデータをと指定した場合はチェック処理にて下記のようなメッセージが表示され、オプションボタンが[更新]に自動的に変更される。問題なければ、そのまま[実行]をクリックすると、新しい内容に入替わる。
フォーム2の場合、チェック終了後にデータがどの都道府県かを、下側に表示されている都道府県の該当の位置にチェックマークが付けられる。
|
3 更新
既に登録されている都道府県のデータを新しいデータと入替える場合の処理で、ファイルの選択から登録までの基本的な操作は[新規]と同じで、[実行]のクリックで下記の確認のメッセージが表示され、[はい(Y)]を選択した場合、新しい内容に入替わり、下記のような更新処理が終了した旨の確認メッセージが表示される。
フォーム2の場合、チェック終了後にデータがどの都道府県かを、下側に表示されている都道府県の該当の位置にチェックマークが付けられる。
|
4 分割
全ての都道府県または、複数の都道府県を含んだデータを、個々の都道府県のデータに分割したい場合の処理で(このようなデータをダウンロードしたが必要な都道府県だけを登録したい場合など。)、ファイルの選択から[実行]までの基本的な操作は[新規]と同じで、[参照]のチェックで複数の都道府県が含まれていないデータを指定した場合は、下記のようなエラーメッセージが表示されると共に、フォーム2の場合はそのデータに含まれている都道府県の位置にチェックマークガ付く。
[実行]にてファイル分割が完了すると、下記の分割処理終了の確認メッセージが表示され、指定されたファイルと同じフォルダ内に、「新規」の[参照]の操作表示例で示すように、都道府県名が付加されたファイル(都道府県名.CSV)が作成される。
|
データベースファイル [↑ページの先頭]
作成されたデータベースファイル(郵便番号DB.mdb)は、
・都道府県
・市区町村
の2つのテーブルとテーブルに対するインデックが作成され、各テーブルとインデックスの内容は以下のようになっていますので、プログラムにて使用する場合はこの内容に基づいてデータを操作するように作成してください。
テーブル名 : 都道府県
フィールド名 | データ型 | データサイズ | その他 |
Uno | テキスト型 | 3 | 重複なし |
Adrs1 | テキスト型 | 16 | 重複なし |
|
都道府県のインデックス
インデックス名 | フィールド名 | 並べ替え順序 |
key1 | Uno | 昇順 |
Adrs1 | 昇順 |
|
uno : 郵便番号の上位3桁
Adrs1 : 都道府県名
|
テーブル名 : 市区町村
フィールド名 | データ型 | データサイズ | その他 |
Uno | テキスト型 | 7 | 重複あり |
Adrs2 | テキスト型 | 20 | 重複あり |
Adrs3 | テキスト型 | 80 | 重複あり |
|
市区町村のインデックス
インデックス名 | フィールド名 | 並べ替え順序 |
key2 | Uno | 昇順 |
key3 | Uno | 昇順 |
Adrs2 | 昇順 |
Adrs3 | 昇順 |
|
uno : 郵便番号すべて7桁
Adrs2 : 市区町村名
Adrs3 : 町域名
|
使用例
・上位3桁の郵便番号にて、「都道府県名」のテーブルを参照し、該当の都道府県データが登録されているかをチェックします。
・登録されている場合は、フルの7桁で「市区町村」のテーブルを参照し、該当が1件だけの場合は、Adrs1、Adrs2、Adrs3と続けて合わせた内容を表示する。
複数ある場合は、Adrs3の「町域名」が複数となるので、Adrs1、Adrs2にAdrs3を加えた内容から選択できるようにする。
・「都道府県名」のテーブル参照は、インデックスを使った操作がベストです。
・「市区町村」のテーブル参照は、処理方法によってはSQL クエリを使ってください。
|