私は Access 2003 を使用する初心者で、AlphaAcctQ というクエリにバインドされたフォームを持っています (テーブルのアカウント名をアルファベット順に並べます - AccountT)。フォームには、クエリからのアカウント名を表示し、選択したアカウントの数値の AcctID を返すバインドされていないリスト ボックスがあります。
フォーム上に「CreateInv」というコマンドボタンがあります。クリックすると、リストボックスで何も選択されていないとエラーメッセージが表示されるようにしたいのですが、
Call MsgBox("AcctList.Value = " & AcctList.Value, vbOKOnly)
If AcctList.Value = Null Then
Call MsgBox("You must select an account first.", vbOKOnly)
'Else
'If subform returns no values Then
'Call MsgBox with another error code
'End If
'run an append query
End If
...次に、「AcctList.Value =" (AcctList リストボックスが値として何を返すかを示すテストでした) というボックスが表示されますが、他には何も起こりません。プロパティで AcctList のデフォルト値を「=Null」に設定しましたが、何も変わりませんでした。
まだ書いていないコードの構造をコメントアウトしました。これは、サブフォームに値がなく、エラーを生成する方法さえわからない場合にエラー メッセージが表示されるはずだからです。リストボックスで何も選択されていない場合、そのコードを開始する方法さえわかりません。
では、リストボックスで何も選択されていない場合の IF ステートメントを作成するにはどうすればよいでしょうか。if サブフォームの別の IF ステートメント (メイン フォームの AcctList リストボックスで選択したアカウントの条件に適合する請求書項目を選択する別のクエリに基づく) はどうでしょうか?
ありがとう。