ACCESS
現在以下のシステムを検討しています。
(1)ログインフォームと(2)トップフォーム(3)注文フォームが別々に存在しており、
(1)ログインフォームは
・ログインID入力用のテキストボックスが一個
・パスワード入力用のテキストボックスが一個
・ログインボタンが1個
設置されています。
以下はログインボタンクリック時に動作するプログラムです。
Private Sub cmdLogIn_Click()
Dim Res
If IsNull(Me.txtID) Then
MsgBox "IDを入力してください"
Me.txtID.SetFocus
Exit Sub
End If
If IsNull(Me.txtPass) Then
MsgBox "パスワードを入力してください"
Me.txtPass.SetFocus
Exit Sub
End If
Res = DLookup("パスワード", "T顧客", _
"顧客ID='" & Replace(Me.txtID, "'", "''") & "'")
If IsNull(Res) Then
MsgBox "該当するIDはありません。正しいIDを入力してください。"
Me.txtID.SetFocus
Exit Sub
End If
If Res = Me.txtPass Then
DoCmd.OpenForm "注文フォーム" '----ID,pass合致でフォームを開く。
Me.txtID = Me.txtID2
Me.txtPass = Me.txtPass2
DoCmd.Close acForm, "Fログイン"
Else
MsgBox "パスワードが異なります。", vbOKOnly + vbCritical
Me.txtPass.SetFocus
End If
End Sub
(2)トップフォームは
商品のリストが画像付き(商品一個につき画像一個)
で示され、画像を押すと商品別に作成してある注文フォームに進むのですが、
ログイン完了していないとログインを促すメッセージが出て注文フォームが開かないよう
にしています。
トップフォームにはテキストボックスを2個不可視の状態で配置しております。
以下は商品画像に埋め込んであるコマンドです。
Private Sub 商品画像 1_Click()
Dim Res
If IsNull(Me.txtID) Then
MsgBox "ログインしてください"
Exit Sub
End If
If IsNull(Me.txtPass) Then
MsgBox "ログインしてください"
Exit Sub
End If
If Res = Me.txtPass Then
DoCmd.OpenForm "商品名" '----ID,pass合致で注文フォームを開く。
End If
End Sub
(3)注文フォームは
・数量選択のコントロールボックス
・注文ボタン
・キャンセルボタン
を設置しています。
【以下が質問内容になります】
「ロフインフォーム」内の入力値(テキストボックスに入力されていたIDやパスワード値)を注文フォーム内のテキストボックスに取得させる(あるいは設定させる)にはどのようにすればよいのでしょうか?
注文フォームにはテキストボックス2個( ID入力用と Password入力用)を不可視で配置しています。こちらのテキストボックス2個については手動入力は行わず、注文フォームが開いた際にログイン時の ID, Paswordがテキストボックスの中に自動的に入力あるいは設定されるようにしたいのですが、どのようにすればよいかがわかりません。
因みにログイン ID,Passwordは複数セットあり、ユーザーがログイン完了後、注文フォームを閉じるまでの間は 同一のID, Paswordの内容を保持したいと考えています。
上記の中にID,Paswordを保持させるようなコードを入れることは可能でしょうか?
注文フォームを開く際のコードに何か入れることができるのではないかと考えていたの
ですが、よい案が浮かびません。
他によいやり方などがあれば教えていただけますでしょうか?
よろしくお願いします。
お礼
ありがとうございます 2つめの方法で実行してみます ちなみに・があるとだめみたいですね