今日は郵便番号ネタです。
先日、住所をパソコンに入力するときは郵便番号を入力すると簡単だよ、という記事を書いています。
郵便番号には、「大口事業所個別番号」という特別な番号があります。配達物数の多い大口事業所を表す個別の郵便番号で、郵便番号を書くだけで住所の記入を省略しても郵便物が届くというものです(ただし、佐川急便など「日本郵便のサービス」でないものは対象外です。)。
そこで、今回は、この 「大口事業所個別番号」 をユーザー辞書に登録して、郵便番号を入力すれば住所が表示されるような仕組みを作ってみたいと思います。
以下、 「大口事業所個別番号」 を「事業所郵便番号」といいます。
事業所郵便番号のデータを入手します
郵便局のHPから、事業所郵便番号のCSVデータ「JIGYOSYO.CSV」をダウンロードします。
HPからZIPファイル型式「jigyosyo.zip」がダウンロードできるので、パソコンの適当な場所に展開しておいてください。
大口事業所個別番号データの説明はこちらから。
Accessにインポートします
アクセスを起動し、新しいテーブル「事業所郵便番号」を作成します。テーブルのフィールドは以下のとおり作成してください。
項目番号 | フィールド名 | 説明 | データ型 | 最大長 |
1 | JISコード | 大口事業所の所在地のJISコード | 短いテキスト(String型) | 5 |
2 | 大口事業所メイ | 大口事業所名(カナ) | 短いテキスト(String型) | 100 |
3 | 大口事業所名 | 大口事業所名(漢字) | 短いテキスト(String型) | 160 |
4 | 都道府県名 | 都道府県名 | 短いテキスト(String型) | 8 |
5 | 市区町村名 | 市区町村名 | 短いテキスト(String型) | 24 |
6 | 町域名 | 町域名 | 短いテキスト(String型) | 24 |
7 | 番地等 | 小字名、丁目、番地等 | 短いテキスト(String型) | 124 |
8 | 大口事業所個別番号 | 大口事業所個別番号(事業所郵便番号) | 短いテキスト(String型) | 7 |
9 | 旧郵便番号 | 旧郵便番号 | 短いテキスト(String型) | 5 |
10 | 取扱局 | 取扱局 | 短いテキスト(String型) | 40 |
11 | 個別番号の種別の表示 | 個別番号の種別の表示 「0」大口事業所 「1」私書箱 | 長整数型(Long型) | 1 |
12 | 複数番号の有無 | 複数番号の有無 「0」複数番号無し 「1」複数番号を設定している場合の個別番号の1 「2」複数番号を設定している場合の個別番号の2 「3」複数番号を設定している場合の個別番号の3 | 長整数型(Long型) | 1 |
13 | 修正コード | 修正コード 「0」修正なし 「1」新規追加 「5」廃止 | 長整数型(Long型) | 1 |
テーブルが出来上がったら、事業所郵便番号のCSVデータをインポートしてください。和休の場合、22,303件のレコードが読み込まれました。
jigyosyo.csv のインポート手順
ユーザー辞書ツールに読み込ませるテキストデータを作成します
次にこのテーブルのデータを、IMEユーザー辞書ツールに読み込ませるテキストデータへ変換(エクスポート)します。
テキストデータのレイアウトは次のとおりで、フィールドの区切りは「タブ」区切りです。
項目番号 | フィールド名 | 説明 |
1 | よみ | 読みをセットします。 今回は、「大口事業所個別番号」をセットします。 |
2 | 単語 | 大口事業所の住所をセットします。 「都道府県名」、「市区町村名」、「町域名」、「番地等」、「大口事業所名」のフィールドを連結してセットします。 |
3 | 品詞 | 文字列「地名その他」をセットします。 |
4 | ユーザーコメント | 文字列「事業所郵便番号」をセットします。 |
テキストデータのもとになるクエリを作成します
テキストデータのもとになるデータは、次の選択クエリを作成して作成します。
リボンから「作成」→「クエリデザイン」を選択します。「テーブルの表示」画面が表示されますが、「閉じる」をクリックして閉じてください。
「SQLビュー」を選択して、次のSQL文を貼り付けます。
SELECT Left([事業所郵便番号]![大口事業所個別番号],3) & "-" & Right([事業所郵便番号]![大口事業所個別番号],4) AS よみ, [事業所郵便番号]![都道府県名] & " " & [事業所郵便番号]![市区町村名] & " " & [事業所郵便番号]![町域名] & " " & [事業所郵便番号]![番地等] & " " & [事業所郵便番号]![大口事業所名] AS 単語, "地名その他" AS 品詞, "事業所郵便番号" AS ユーザーコメント FROM 事業所郵便番号 ORDER BY 事業所郵便番号.JISコード, 事業所郵便番号.大口事業所個別番号;
クエリに名前を付けて保存します。ここでは「辞書データ」としました。
エクスポート手順
クエリ「辞書データ」をエクスポートします。
Microsoft IME ユーザー辞書ツール に読み込ませます
「Microsoft IME ユーザー辞書ツール」を起動し、「ツール」→「テキストファイルからの登録」を選択し、先ほど出力した「 辞書データ.txt」を読み込ませます。
タスクバーのIMEのアイコン(入力モードによって「A」や「あ」に変化するところ。)を右クリックし、「ユーザー辞書ツール」を選択します。
事業所郵便番号を登録した「辞書データ.txt」をユーザー辞書ツールに読み込ませてみたところ、101件のレコードが読み込みに失敗したようです。
エラーログを見てみると、どうやら住所が長すぎるのが原因のようです。そこで、入力できる桁数を調べてみると、60文字が入力できる上限であることが分かりました。
ちなみに、どうやって上限を調べたかといいますと、ユーザー辞書ツールに試しに単語を登録してみたのです。60文字が入力の上限だったので、テキストからの入力も60文字が上限と判断しました。
長くなったので、今日はこの辺で。
次回は一部の文字を置き換えて、できるだけ多くのレコードをユーザー辞書へ登録するよう試してみたいと思います。
その2へ続きます。
コメントをどうぞ!