アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。
超初心者ですがよろしくお願いします。
複数条件での検索方法を検討しています。いろいろ調べて、
MeMain.Filter = "[ID] like '" & Me!text1 & "'"and"_
&"[社名] Like '" & Me!Text2 & "'"and"_
&"[住所] Like '" & Me!Text3 & "%'"
という形で動かしてみるとうまくいきません。どのようにしたらうまくいくのでしょうか。
できれば、同時に2つの条件で検索するときの形も教えていただけないでしょうか。
よろしくお願いします。

A 回答 (4件)

No3の続きです。



コードに数値を直接かくならば、

Me.Filter = "[ID] >=" & 2 & _
"AND " & "[社名] Like '" & Me!Text2 & "'" & _
"AND " & "[住所] Like '" & Me!Text3 & "'"

となります。
    • good
    • 0

No1です。


「ID」が数値型の場合は、

Me.Filter = "[ID] >=" & Me!Text1 & _
"AND " & "[社名] Like '" & Me!Text2 & "'" & _
"AND " & "[住所] Like '" & Me!Text3 & "'"

のようにします。

「ID」がテキスト型の場合は、

Me.Filter = "[ID] >='" & Me!Text1 & "'" & _
"AND " & "[社名] Like '" & Me!Text2 & "'" & _
"AND " & "[住所] Like '" & Me!Text3 & "'"

のようにします。等号をつけるかつけないかは
ご随意に。
    • good
    • 0
この回答へのお礼

早速回答いただき、ありがとうございました。できました。大変助かりました。
ありがとうございました。

お礼日時:2014/09/27 14:24

まずは、自分で記述したものが正しいのか確かめます。


以下を標準モジュールに記述してどの様な結果が得られるか確認してください

Public Sub test()
  Dim sS As String

  sS = "A Like '★' And B Like '★' And C Like '★%'"
  sS = Replace(sS, "★", """ & ▲ & """)
  Debug.Print """" & sS & """"
End Sub

イミディエイトウィンドウに表示されたものと、
提示されたものとの違いを確認してください。

なお、ワイルドカードを使っていない部分の Like は = でも。
    • good
    • 0
この回答へのお礼

回答いただき、ありがとうございます。

お礼日時:2014/09/27 14:26

>という形で動かしてみるとうまくいきません。


エラーが出るとか、何も抽出されないとかいう
情報を記載しておけばよりわかりやすいのですが。


Filterの最後のほうに「%」などがはいっていますが、
何をしようとしたのでしょうか。
また、Filter文の改行のしかたが間違っているようですが。

また、
  MeMain.Filter
の、「MeMain」 がよくわからないので、以下では
単に、 「Me」としています。


(1)
ともあれ、以下を試してみてください。

Me.Filter = "[ID] like '" & Me!Text1 & "' AND " & "[社名] Like '" & Me!Text2 & "' And " & "[住所] Like '" & Me!Text3 & "'"


改行を入れると、

Me.Filter = "[ID] like '" & Me!Text1 & "'" & _
"AND " & "[社名] Like '" & Me!Text2 & "'" & _
"AND " & "[住所] Like '" & Me!Text3 & "'"





(2)
>できれば、同時に2つの条件で検索するときの形も教えていただけないでしょうか。


Me.Filter = "[ID] like '" & Me!Text1 & "' AND " & "[社名] Like '" & Me!Text2 & "'"

改行すると、

Me.Filter = "[ID] like '" & Me!Text1 & "'" & _
"AND " & "[社名] Like '" & Me!Text2 & "'"


あるいは、どれかがあてはまれば、ということであれば、ANDをOrにして、

Me.Filter = "[ID] like '" & Me!Text1 & "'" & _
"Or " & "[社名] Like '" & Me!Text2 & "'" & _
"Or " & "[住所] Like '" & Me!Text3 & "'"

この場合は、一つだけ条件をいれてもあてはまるものがあれば
すべて表示します。



なお、「*」を入れてあいまい検索をすることもできます。
以下の、「抽出条件の書き方」のとこえおにあります。
(3)
ついでに以下も参考に。
データ型による記述の違い
http://www.nurs.or.jp/~ppoy/access/access/acM007 …

抽出条件の書き方
http://fk-plaza.jp/acs/TIPS/waza19.htm
    • good
    • 0
この回答へのお礼

ありがとうございました。うまくいきました。
(3)を見て勉強してみたのですが、Me.Filter = "[ID] like '" & Me!Text1 & "' AND " & "[社名] Like '" & Me!Text2 & "'"
で[ID]>=2というのを試してみたのですが単に代入しただけではうまくいかず"[ID]>=2""でもだめでした。
できましたら、追加で教えていただけないでしょうか。お手数をおかけしますが、どうかよろしくお願いします。

お礼日時:2014/09/27 13:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!