Microsoft Access Club Access超初心者対象Forum Access初級者対象Forum Access VBA Tips Forum DAO、ADO、SQL Forum

     

リストへもどる

投稿記事の一括表示

タイトル特定フィールドに含まれる語句を2つのコンボボックスで指定し、コマンドボタンを使ってレコードを抽出したい
記事No42767
投稿日: 2017/01/19(Thu) 17:02
投稿者できない
OS:Windows7
Access Version:2010

テーブル:T_社員情報 からフォームを作成しました。

T_社員情報
社員ID|氏名|入社年|出身地|
10102|田中| 1999|大阪|
10134|金子| 2014|長崎|

@コンボボックス1の名前:氏名コンボ1
Aコンボボックス2の名前:入社年コンボ2
Bコマンドボタンの名前:抽出

コマンドボタン:抽出のクリック時に下記イベントプロシージャを作成をしました。
Private Sub 抽出_Click()
' テキストボックス内容を保存する変数を定義
Dim strSagasu1 As String
Dim strSagasu2 As String
' テキストボックスの値を変数にいれる
strSagasu1 = Me![氏名コンボ1]
strSagasu2 = Me![入社年コンボ2]
' フィルタの実行、変数を含む曖昧語を指定
Me.Filter = "氏名 Like '*" & strSagasu1 & "*'"
Me.Filter = "入社年 Like '*" & strSagasu2 & "*'"
Me.FilterOn = True
End Sub
※一応、曖昧語でも抽出できるようにしてますが、曖昧語でなくても構いません。

実行結果は入社年コンボ2しか動いていないようです・・・(ノД`;)
どう修正したら2つのコンボボックスの条件から抽出できますか?

タイトルRe: 特定フィールドに含まれる語句を2つのコンボボックスで指定し、コマンドボタンを使ってレコードを抽出したい
記事No42768
投稿日: 2017/01/20(Fri) 11:22
投稿者Genzo
Filterを上書きしているので、入社年コンボ2しか動いていないのでは
ないかと思います。

> ' フィルタの実行、変数を含む曖昧語を指定
> Me.Filter = "氏名 Like '*" & strSagasu1 & "*'"
> Me.Filter = "入社年 Like '*" & strSagasu2 & "*'" '<-ここで上書きしている

なので、

Me.Filter = "氏名 Like '*" & strSagasu1 & "*' and 入社年 Like '*" & strSagasu2 & "*'"

などとしてみてはいかがでしょうか?

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード

ページの先頭へ 前ページへ戻る