|
▼わん さん:
おはようございます。
>If DCount("*", "選手1", "Left(入団日, 4) = '" & Me.コンボ年 & "'") = 0 Then
> MsgBox "そんな入団年ないよ"
> ElseIf DCount("*", "選手1", "mid(入団日,6,2) = '" & Me.コンボ月 & "'") = 0 Then
> MsgBox "そんな入団月ないですよ〜"
> ElseIf DCount("*", "選手1", "ポジション = '" & Me.テキストポジション & "'") = 0 Then
> MsgBox "そんなポジションないってば"
> Else
DCount関数の第3引数の条件式は「AND」条件でつなげる事ができるので、
DCount("*", "選手1", "ポジション = '" & Me.テキストポジション & "' AND " _
& "Left(入団日,7) = '" & Me.コンボ年 & "/" & Me.コンボ月 & "'")
でフィルタを掛ける前に件数を求めることができます。
また、Filterの後に「Me.Recordset.RecordCount」で結果が何件かを調べる事ができるので、
If Me.Recordset.RecordCount = 0 Then
Msgbox "結果0件ですね"
Me.FilterOn = False
End If
なんていうのもありかと思います。
>最下部のレコードの操作ではなく、フォーム上にコマンドボタンか何かのコントロールで
>検索できるようにすることは可能なのでしょうか?
[表示] → [ツールバー] → [ツールボックス] でツールボックスを表示させると、
テキストボックスやコンボボックスなどと共に
「コントロールウィザード」というアイコンが出現します。
これを押した状態でコマンドボタンを配置すると、
Accessのウィザードでレコードの移動ボタンが作れます。
クリック時のイベントを見ると変なエラー処理がついていますが、
DoCmd.GoToRecord , , acNext
DoCmd.GoToRecord , , acPrevious
こんな記述ができていると思います。
|
|