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


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

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

    発 行 : Yoshihisa Fukuda          2002.04.13 Vol.19

■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
突然ですが、読者の皆様、ごめんなさい。

実は、前回のVol.18ですが、全て無かった事にして下さい。
郵便番号データの取り込みと更新の機能を、色々と考えた結果、少し方法を変える
事にしました。

従って、今回のVol.19はVol.17の続きと考えて下さい。

誠に申し訳ございませんが、よろしくお願いいたします。

今回は、郵便番号データの取り込み・更新フォームの作成です。
このフォームは、郵便番号の取り込みと更新の両方で、共用で使用するフォームです。
フォーム呼び出し時にパラメータを渡され、そのパラメータにより機能を振り分け
る様にします。
______________________________________
 □ 郵便番号データ取り込み・更新フォームを作成する。

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

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

3.[新規作成]ボタンを押下し、[フォームの新規作成]ダイアログで[デザインビュ
  ー]を選択し[OK]ボタンを押下します。

4.フォームを選択した状態で、以下のプロパティを設定します。

  レコードセレクタ   ・・・ いいえ
  移動ボタン      ・・・ いいえ
  コントロールボックス ・・・ いいえ

5.テキストボックスを3つ作成します。
  コントロールウィザードを無効にして、フォームの中央よりやや上に、縦に3つ
  並べて作成します。
  それぞれのテキストボックスに以下のプロパティを設定しましょう。

  一番上のラベルの[名前]プロパティ      ・・・ Label1
  一番上のテキストボックスの[名前]プロパティ ・・・ FileName1

  二番目のラベルの[名前]プロパティ      ・・・ Label2
  二番目のテキストボックスの[名前]プロパティ ・・・ FileName2

  三番目のラベルの[標題]プロパティ      ・・・ データ最新日付
  三番目のテキストボックスの[名前]プロパティ ・・・ LatestDate
  三番目のテキストボックスの[書式]プロパティ ・・・ yyyy/mm/dd

6.次にコマンドボタンを4つ作成します。
  2つはファイル選択用のダイアログを出すボタンです。
  残り2つの内、一つは、取込・更新ボタン、もう一つは閉じるボタンです。
  以下の手順で作成しましょう。

 (1)5で作成したテキストボックスの上2つの右横に、コマンドボタンを作成
    します。(コントロールウィザードは無効にしておきます)
    作成したら、それぞれのコマンドボタンの各プロパティを以下の様に設定
    しましょう。

    上のコマンドボタンの[名前]プロパティ   ・・・ FileSel1Btn

    下のコマンドボタンの[名前]プロパティ ・・・ FileSel2Btn

    両方のコマンドボタンの[ピクチャ]プロパティを以下の要領で設定します。

  1.[ピクチャ]プロパティにカーソルを移動し、右端の[...]ボタンを押下する。
  2.[ピクチャビルダ]ダイアログで選択可能なピクチャから[フォルダを開く]
    を選択し、[OK]ボタンを押下する。

 (2)フォーム下部のやや左側に、コマンドボタンを作成します。
    これもコントロールウィザードは使用しません。
    作成したら[名前]プロパティに[ExecuteBtn]と設定しましょう。

 (3)最後の1つは[閉じる]ボタンです。
    今までと同じ要領でコントロールウィザードを使用して作成しましょう。

7.コントロールの作成が終わったら、次にフォームを選択した状態で[開く時]
  プロパティを[イベントプロシージャ]にしてモジュールウィンドウを開きます。

8.Private Sub Form_Open(Cancel As Integer) と End Sub の間に以下の
  コードを入力しましょう。

  Select Case Me.OpenArgs
    Case 1
      Me.Caption = "郵便番号データ取り込み"
      Me.Label1.Visible = True
      Me.Label1.Caption = "取込ファイル名"
      Me.Label2.Visible = False
      Me.FileName1.Visible = True
      Me.FileName2.Visible = False
      Me.FileSel1Btn.Visible = True
      Me.FileSel2Btn.Visible = False
      Me.ExecuteBtn.Caption = "取込"
    Case 2
      Me.Caption = "郵便番号データ更新"
      Me.Label1.Visible = True
      Me.Label1.Caption = "廃止ファイル名"
      Me.Label2.Visible = True
      Me.Label2.Caption = "新規追加ファイル名"
      Me.FileName1.Visible = True
      Me.FileName2.Visible = True
      Me.FileSel1Btn.Visible = True
      Me.FileSel2Btn.Visible = True
      Me.ExecuteBtn.Caption = "更新"
    Case Else
      MsgBox "パラメータエラー"
  End Select

8.ここまで出来たら、一度フォームを保存して終了します。
  フォーム名は[ZipUpdateForm]として下さい。

次に、郵便番号メンテナンスフォーム[ZipCodeForm]からの呼び出しボタンを作成
しましょう。
______________________________________
 □ 郵便番号メンテナンスフォームに郵便番号データ取込・更新ボタンを作成する。

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

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

3.フォームのフッターを拡げて、そこに郵便番号データ取り込みボタンを作成
  しましょう。

4.ツールバーのコマンドボタンを選択し適当な位置にボタンを追加します。
 (コントロールウィザードは無効にしておきます)

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

  名前 ・・・ ImportBtn
  標題 ・・・ 郵便データ取込

6.郵便番号データ取り込みボタンを選択した状態で[クリック時]プロパティに
  [イベントプロシージャ]を設定し、右端の[...]ボタンを押下してモジュール
  ウィンドウを開きます。

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

On Error GoTo Err_ImportBtn_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "ZipUpdateForm"
DoCmd.OpenForm stDocName, , , stLinkCriteria, , , 1

Exit_ImportBtn_Click:
Exit Sub

Err_ImportBtn_Click:
MsgBox Err.Description
Resume Exit_ImportBtn_Click

8.コードを記述したらモジュールウィンドウを閉じます。

9.次に郵便番号更新ボタンを作成します。
  ツールバーのコマンドボタンを選択し先ほどの[取込]ボタンの横に追加します。
 (コントロールウィザードは無効にしておきます)

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

  名前 ・・・ UpdateBtn
  標題 ・・・ 郵便データ更新

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

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

On Error GoTo Err_UpdateBtn_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "ZipUpdateForm"
DoCmd.OpenForm stDocName, , , stLinkCriteria, , , 2

Exit_UpdateBtn_Click:
Exit Sub

Err_UpdateBtn_Click:
MsgBox Err.Description
Resume Exit_UpdateBtn_Click

8.コードを記述したらモジュールウィンドウを閉じます。

9.ここで最後に[閉じる]ボタンを追加しておきましょう。

10.郵便番号メンテナンスフォームの修正はこれで完了です。
  フォームを保存して終了しましょう。
______________________________________
 □ 郵便番号メンテナンスフォームのチェックをする。

これで、郵便番号データ取り込みと更新の呼び出しができる様になりました。

試しに、郵便番号メンテナンスフォームを開いて[郵便番号データ取込]ボタンを
押下してみて下さい。

先ほど作成した郵便番号データ取込・更新フォームが開きますね。
ここで以下の項目を確認しましょう。

1.タイトルバーの文字が「郵便番号データ取りこみ」になっている。
2.最初のテキストボックスのラベルが「取込ファイル名」となっている。
3.[閉じる]ボタンの左側のボタン(実行ボタン)が「取込」になっている。

では、次に郵便番号メンテナンスフォームから[郵便番号データ更新]ボタンを押下
してみて下さい。

そして、以下の項目を確認します。

1.タイトルバーの文字が「郵便番号データ更新」になっている。
2.最初のテキストボックスのラベルが「廃止ファイル名」となっている。
3.2番目のテキストボックスのラベルが「新規追加ファイル名」となっている。
4.[閉じる]ボタンの左側のボタン(実行ボタン)が「更新」になっている。

取込で開いた時は、2番目のテキストボックスが表示されていない点にも注意して
下さい。

次回は、郵便番号データ取り込みと更新のプログラム作成です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

◇ 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.

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