メールマガジン【アクセスで作るシリーズ】


バックナンバー 【住所録ソフト編】 Vol.16
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

    ACCESSで作るシリーズ  【住所録ソフト編】

    発 行 : Yoshihisa Fukuda          2001.02.23 Vol.16

■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
今回は、テーブルのサイズ修正と、郵便番号テーブルメンテナンス画面に削除ボタン
を付加します。
______________________________________
 □ 郵便番号テーブルフィールドサイズの修正。

1.住所録ソフトのデータベース[Address.mdb]を開きます。

2.データベースウィンドウの[テーブル]タブを選択します。

3.郵便番号テーブル[ZipCodeTable]を選択し[デザイン]ボタンを押下します。

4.以下のフィールドサイズを修正します。
  ※ Vol.15の中でカナは大丈夫と書いたのですが、カナ2とカナ3が溢れていま
    したので修正が必要です。
   _______________________
   フィールド名   旧サイズ 新サイズ
   -----------------------
   AddrKana2     20     40
   AddrKana3     20     100
   Address2     20     40
   Address3     20     100
   ━━━━━━━━━━━━━━━━━━━━━━━

5.フィールドサイズを修正したらメニューの[ファイル]-[上書き保存]を選択し、
  テーブルのデザインを保存して、ウィンドウの右上の[×]ボタンを押下しウィン
  ドウを閉じます。
______________________________________
 □ 郵便番号テーブルメンテナンス画面に削除ボタンを付ける。

1.データベースウィンドウの[フォーム]タブを選択します。

2.郵便番号テーブルメンテナンス画面[ZipCodeForm]を選択し[デザイン]ボタンを
  押下します。

3.フォームを選択した状態で[レコードソース]プロパティにカーソルを移動し、
  右端の[...]ボタンを押下します。

4.クエリービルダが開いたら、上段の[ZipCodeTable]の[ID]フィールドをダブル
  クリックし、下段にIDフィールドを追加したら保存して終了します。

5.郵便番号テーブルメンテナンス画面の詳細セクション内の町域名フィールドの
  右横に削除ボタンが追加できる様に、フォームの幅を少し大きくします。

6.ツールバーのコマンドボタンを選択し、詳細セクション内の町域名フィールドの
  右横あたりにボタンを追加します。
  (コントロールウィザードは無効にしておきます)

7.追加したボタンの以下のプロパティを設定します。

  名前 ・・・ RecDelBtn
  標題 ・・・ 削除

8.削除ボタンを選択した状態で[クリック時]プロパティに[イベントプロシージャ]
  を設定し、右端の[...]ボタンを押下してモジュールウィンドウを開きます。

7.モジュールウィンドウを開いたら、Private Sub RecDelBtn_Click() と
  End Sub の間に以下のコードを記述します。

  Private Sub RecDelBtn_Click()
    Dim SqlStr As String

    SqlStr = "delete * from ZipCodeTable WHERE ID=" & [ID]
    DoCmd.RunSQL SqlStr
    Me.Requery
  End Sub

8.モジュールを保存してウィンドウを終了します。

9.フォームを保存して終了します。
______________________________________
 □ 郵便番号テーブルのインポートのやり直し。

 これで、郵便番号テーブルのデータを画面から追加・修正・削除が可能となった訳
 ですが、今の状態ではフィールドサイズが足りなかった町域名などが途中で切れて
 しまっています。

 そこで、郵便データ(郵政省配布のCSVファイル)を再インポートしましょう。
 このまま、インポートを行うと、データが重複するので、現在の郵便番号テーブル
 のデータを一度削除する必要があります。

 この郵便番号テーブルのデータ削除をクエリーを使って行って見ましょう。

1.データベースウィンドウの[クエリー]タブを選択します。

2.[新規作成]ボタンを押下すると、[クエリーの新規作成]ダイアログが開くので
  [デザインビュー]を選択し[OK]ボタンを押下します。

3.[テーブルの表示]ダイアログで[ZipCodeTable]を選択し[追加]ボタンを押下し
  クエリービルダのウィンドウに[ZipCodeTable]が表示されたら[閉じる]ボタンを
  押下します。

4.上段の[ZipCodeTable]の[*]をダブルクリックし、下段のフィールドに設定します。

5.メニューの[クエリー]-[削除]を選択します。
  (この時、タイトルバーの表示が選択クエリーから削除クエリーい変わります)

6.メニューの[クエリー]-[実行]を選択すると「○○○件のレコードが指定した
  テーブルから削除されます。」と言う確認ダイアログが出ますので[はい]を選択
  します。

これで、郵便番号テーブルのデータは全て削除されました。

今後も、全て削除する事があると思えば、このクエリーを保存しておけば、クエリー
を実行する事で、いつでも郵便番号テーブルの全データを削除する事が出来ます。

※ 郵便番号テーブルメンテナンス画面に全データ削除と言うボタンを作成する場合、
  そのボタンがクリックされた時に、このクエリーを実行する事で出来ます。

郵便番号テーブルの全データを削除したら、郵便データ(郵政省のCSVファイル)
を再度インポートしましょう。
______________________________________
 □ 市販住所録ソフトについて。

 前回のメールマガジンにも書いたのですが、例えば、市販ソフトの「筆まめ」で
 〒602-0816と入力し、住所変換しようとした際、一覧表示には

 京都府京都市上京区毘沙門町(上立売通寺町西入)
 京都府京都市上京区毘沙門町(上立売通寺町西入上る)
 京都府京都市上京区毘沙門町(上立売通寺町西入下る)
 京都府京都市上京区毘沙門町(上立売通寺町西入4筋目下る)
 京都府京都市上京区毘沙門町(寺町通今出川上る1筋目西入)
 京都府京都市上京区毘沙門町(寺町通今出川上る2丁目)
 京都府京都市上京区毘沙門町(寺町通今出川上る2丁目西入)
 京都府京都市上京区毘沙門町(寺町通今出川上る3丁目)
 京都府京都市上京区毘沙門町(寺町通今出川上る3丁目西入)
 京都府京都市上京区毘沙門町(寺町通今出川上る4丁目)
 京都府京都市上京区毘沙門町(寺町通今出川上る4丁目西入)
 京都府京都市上京区毘沙門町(寺町通今出川西入)
 京都府京都市上京区毘沙門町(寺町通今出川2丁目上る西入)
 京都府京都市上京区毘沙門町(塔之段寺町通今出川上る)

 と14行で表示されるのですが、この中のどの住所を選んでも、住所は
 「京都府京都市上京区毘沙門町」しか入りません。

 何のために14行の住所一覧が出てくるのか、その意味がよく判らないのですが
 私の手元には「筆まめ」しかないため、他の市販ソフトではどの様になるのか
 判りません。

 そこで、読者の皆様方の中で、市販の住所録ソフトをお持ちの方は、どの様な動作
 をするか、教えて頂きたいと思います。

 何か、住所録ソフトをお持ちの方で、気付いた点などありましたら、掲示板の方へ
 書き込んで下さい。

 皆様、ご協力の程、よろしくお願いいたします。
______________________________________
 □ お勧めサイト

 最近、見つけたお勧めのサイトをご紹介します。

 ISIZE PC相談室 と言うサイトでPCに関する様々な情報を得る事が出来ます。

 PCに関する製品・サービスの「相談」や「クチコミ評価」もあり、購入前に実際
 に使っている人の意見を聞いたり、相談したりできます。

 また、ソフトの使い方や技術的な相談までPCに関する幅広い情報交換ができます。
 (アクセスやデータベースの相談もできます)

 相談する側、される側の両方になれるので、得意な分野があれば相談を受ける事も
 出来ます。

 私自身も、このサイトで色々な相談を受け付けています。
 (まだ、相談した事はありませんが)

 登録等は無料で一切お金はかかりません。

 結構、便利なので良かったら、皆さんも利用してみて下さい。

 登録は下記URLの中ほどからどうぞ。

 http://homepage2.nifty.com/f-soft/index.htm
______________________________________
 □ 質問メールについて

 このメールマガジンについて、読者の皆様方から、よく質問のメールを頂きます。

 その質問で、時々あるのがプログラムが1行あり、ここでエラーが出ます。
 どうしてでしょうか?
 と言った質問があります。

 これだけで、調べようとすると大変な時間を必要とし、正確な解答も出来ない事が
 多くなります。

 質問の際は、できるだけ詳しい内容をお書き下さい。

 1.エラーの内容
   コンパイルエラー等
   ダイアログなどにエラーの内容が表示されている場合、その内容。
 2.いつエラーになるか
   フォームを開いた時
   ○○ボタンを押した時
   コンボボックスを開こうとした時 など
 3.アクセスのバージョン
   アクセス97
   アクセス2000
   アクセス2002 など

 円滑なサポートを行うため、ご協力の程、よろしくお願いいたします。
______________________________________
 □ サンプルMDBについて

 今までのサンプルMDBは、メールマガジンのその号に関連した部分のみでしたが、
 今後は全てを含んだ形になります。

 回が進むごとにサイズが大きくなりますが、全てを含んでいる方が、使い易いと
 言う声がありましたのでその様にしました。

 尚、データについては郵便番号テーブルはサイズが大きいため、削除した状態に
 してあります。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

◇ ACCESSで作るシリーズ 【住所録ソフト編】
◇ 発 行 元  :Yoshihisa Fukuda(福田 義久)
◇ ご意見・ご要望
  ご質問等   :fukud@nifty.com

◇ このメールマガジンは、インターネットの本屋さん『まぐまぐ』を利用して発行
  しています。(まぐまぐID:0000077071)
◇ バックナンバー:http://homepage2.nifty.com/f-soft/
◇ 登録・解除  :http://homepage2.nifty.com/f-soft/

 Copyright(C) 2001-2002 Yoshihisa Fukuda All rights reserved.

◇転載について
 このメールマガジンの無断転載などは、一切禁止です。
 転載をご希望の方は、事前にメールで連絡をください。
◇免責
 このメールマガジン及びホームページの内容による、いかなる損害、障害などに
 関して発行者は一切の責任を負いません。
 掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□