Access(ADP & VBA)とMSDEで作るクライアントサーバーシステム(c/s)

 
実践テクニック、Accessで作るクラサバシステム



2007/02/13配信
 

第9コース  第2回 「得意先マスタリストの作成」




 

 ■メニュー

   1.得意先マスタリストの作成(2回目)

===================================================================

 こんにちは、ティウェアの高橋です。
 
 それでは、得意先マスタリストの作成の2回目をはじめましょう。

 では、はじめましょう。

------------------------------------------------------------------
 
 2-1.formの処理

  2-1.form → load

   formのloadは、画面を開いた場合に1回だけ通る処理です。

     '◎ポイント解説 1 -----*-----*-----*-----

Set cn = Application.CurrentProject.Connection
cn.CursorLocation = adUseClient

     '◎ポイント解説 2 -----*-----*-----*-----

[印刷年].Enabled = True
[印刷月].Enabled = True
[印刷日].Enabled = True
[印刷部数].Enabled = True
[sta営業所コード].Enabled = True
[sta得意先コード].Enabled = True
[end営業所コード].Enabled = True
[end得意先コード].Enabled = True
[staカナ名].Enabled = True
[endカナ名].Enabled = True

     '◎ポイント解説 3 -----*-----*-----*-----

tDate = Date
Forms(cFormName_M)![印刷年] = Year(tDate)
Forms(cFormName_M)![印刷月] = Month(tDate)
Forms(cFormName_M)![印刷日] = Day(tDate)

Forms(cFormName_M)![印刷時間] = Format$(Hour(Time), "00") & ":" _
& Format$(Minute(Time), "00")
Forms(cFormName_M)![印刷部数] = 1
Forms(cFormName_M)![sta営業所コード] = 0
Forms(cFormName_M)![sta得意先コード] = 0
Forms(cFormName_M)![end営業所コード] = 99
Forms(cFormName_M)![end得意先コード] = 99999
Forms(cFormName_M)![staカナ名] = " "
Forms(cFormName_M)![endカナ名] = "ンンンンンンンンンンン"

     '◎ポイント解説 4 -----*-----*-----*-----

[btn印刷].Enabled = True
[btn終了].Enabled = True

     '◎ポイント解説 5 -----*-----*-----*-----

[印刷順].SetFocus


 1-1.◎ポイント解説 1 について

    データを接続します。

 1-2.◎ポイント解説 2 について

    テキストを使える状態にします。

 1-3.◎ポイント解説 3 について

    デフォルト(初期値)現在の日付を求めます。
    それを印刷のテキストボックスに送ります。
    帳票に印刷させるためです。

    ここでは数字タイプは、00〜99999999を文字タイプは、カナの
    最小値から最大値にしています。

    初期値を全て空白にして内部的に処理する方法も考えられます。
    どちらでも構わないと思います。

    でも、統一した形にしてください。
    ある帳票は、空白で作っているのに、こちらの帳票では、数値が
    入っていると言う事はやめましょう。

 1-4.◎ポイント解説 4 について

    ボタンを使える状態にします。

 1-5.◎ポイント解説 5 について

    印刷順にフォーカス(焦点)をセットします。

 注意

Forms(cFormName_M)![endカナ名] = "ンンンンンンンンンンン"
 半角は、メルマガではエラーとなりますので記述しましたが
 実際は、半角の"ン"が40文字となります。

--*--------*--------*--------*--------*--------*--------*--------*--

  2-2.form → Unload

cn.Close
Set cn = Nothing

 接続を開放します。
 終了時には、必ず開放して下さい。

--*--------*--------*--------*--------*--------*--------*--------*--

  2-3.form → KeyDown

  リスト関係もキーボード処理を施します。
  フォーム上で何かしらのキーが押されたときの処理です。

On Error GoTo Form_KeyDown_err

Select Case KeyCode

Case 116 'プレビュー(F5)
If btnプレビュー.Enabled = True Then
btnプレビュー.SetFocus
SendKeys "{ENTER}"
NumLock_処理
End If

Case 119 '印刷(F8)
If btn印刷.Enabled = True Then
btn印刷.SetFocus
SendKeys "{ENTER}"
NumLock_処理
End If

Case 35 '終了(END)
If btn終了.Enabled = True Then
btn終了.SetFocus
SendKeys "{ENTER}"
NumLock_処理
End If

End Select

Exit Sub

Form_KeyDown_err:

MsgBox "エラーが発生しました。再度、見直してください。", _
vbCritical, "エラー"


 Form上のキーボードイベント取得を「はい」にすると
 Form上のKeyDownを優先されます。

 マウスは極力使わないというより、要らないに等しい入力ができる。
 これもこのシステムの特徴。
 これで、入力の速度は一気に向上します。

 次回も、得意先マスタリストの作成です。

===================================================================

                ◆ 実践テクニック、Accessで作るクラサバシステム ◆

  編集・構成:高橋浩
  提供・発行:ティウェア

http://www.1tware.com/index.html

Access2000+MSDE2000、Access2002+MSDE2000、Access2003+MSDE2000で
作る販売管理ソフト、クライアントサーバーシステムを構築

※当メールマガジンに掲載された記事を許可なく転載することを禁じます。

===================================================================

実践テクニック、Accessで作るクラサバシステム(隔週 火曜日発行中)

SEが10年以上の開発ノウハウを惜しみなく完全公開!

Mail:  (半角英数字)     Powered byまぐまぐ


HOME / お客様の声 / メルマガ / 販売管理ソフト教材 / 会社概要/ 特定商取引法/ お申し込み
 お問い合わせ / メルマガのご意見ご感想 / メルマガのバックナンバー/ プライバシーポリシー
 


 Copyright (c) 2001 ティウェア All rights reserved.