第7コースがいよいよ始まります。
帳票が続きますが、担当者マスタリストの作成をします。
担当者マスタリストの作成、1回目です。
早速、はじめましょう。
-------------------------------------------------------------------
担当者マスタリスト
フォーム名、項目名の作成
フォームにマスタの項目を作成します。
1.フォーム名の設定
1-1.プロパティの内容
表題 担当者マスタリスト
2.項目名の設定
2-1.ラベルの作成
印刷順、カナ名、担当者コードを作成して下さい。
2-2.印刷順(オプショングループ)
2-3.印刷年(テキストボックス)
2-3-1.カナ名順(オプションボタン)
ラベル名はカナ名順にします。
プロパティの内容
名前 optカナ名順
オプション値 1
使用可能 はい
編集ロック いいえ
2-3-2.担当者コード順(オプションボタン)
ラベル名は担当者コード順にします。
プロパティの内容
名前 opt担当者コード順
オプション値 2
使用可能 はい
編集ロック いいえ
3-1.開始のカナ名(テキストボックス)
カナ名には、範囲指定ができるようにします。
プロパティの内容
名前 staカナ名
IME入力モード保持 いいえ
IME入力モード 半角カタカナ
IME変換モード 無変換
4-1.終了のカナ名(テキストボックス)
プロパティの内容
名前 endカナ名
IME入力モード保持 いいえ
IME入力モード 半角カタカナ
IME変換モード 無変換
5-1.開始の担当者コード(テキストボックス)
担当者コードには、範囲指定ができるようにします。
プロパティの内容
名前 sta担当者コード
書式 00
IME入力モード保持 いいえ
IME入力モード オフ
IME変換モード 一般
6-1.開始の担当者コード(テキストボックス)
プロパティの内容
名前 end担当者コード
書式 00
IME入力モード保持 いいえ
IME入力モード オフ
IME変換モード 一般
7-1.印刷月(テキストボックス)
プロパティの内容
名前 印刷月
書式 00
使用可能 はい
編集ロック いいえ
8-1.印刷日(テキストボックス)
プロパティの内容
名前 印刷日
書式 00
使用可能 はい
編集ロック いいえ
9-1.印刷時間(テキストボックス)
プロパティの内容
名前 印刷時間
使用可能 はい
編集ロック いいえ
3.ボタンの設定
3-1.プレビューボタン
名前 btnプレビュー
表題 プレビュー(F5)
3-2.印刷ボタン
名前 btn印刷
表題 印刷(F8)
3-3.終了ボタン
名前 btn終了
表題 終了(End)
-*-------*-------*-------*-------*-------*-------*-------*-------*-
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
[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)![end担当者コード] = 99
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〜99を文字タイプは、カナの最小値
から最大値にしています。
初期値を全て空白にして内部的に処理する方法も考えられます
どちらでも構わないと思います。
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年以上の開発ノウハウを惜しみなく完全公開!
|