プロが教える店舗&オフィスのセキュリティ対策術

openform のパラメータのwhereconditionに、like演算子を使って、

「 フィールド名 like %文字% 」

というような指定をしたいのですが、上手くいきません。
演算子が無いとか、いろいろ言われてしまいます。
どのように記述すると、動作するでしょうか?

A 回答 (5件)

> 「 フィールド名 like %文字% 」


Oracle系とはワイルドカードキャラクタが異なります。

フィールド名 like '*文字*' か
フィールド名 like "*文字*" を使用してください。

任意の文字列を表す場合の%は*、
任意の1文字を表す場合の_は? です。
    • good
    • 0
この回答へのお礼

ありがとうございました。
結果的には、シングルクォート(ダブルクォートでもいいのですね)と、%→*の2重の罠にはまっていたようでした。
回答感謝いたします

お礼日時:2006/02/09 17:48

DoCmd.OpenForm "テーブル名", , , "フィールド名 Like '*文字*'"


これで出来ます。
定数を使ってなら
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "テーブル名"
stLinkCriteria = "a Like '*文字*'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
で出来ます。
    • good
    • 0
この回答へのお礼

ありがとうございました。
結果的には、シングルクォート(ダブクォートでもいいのですね)と、%→*の2重の罠にはまっていたようでした。
回答感謝いたします。

お礼日時:2006/02/09 17:46

s_husky です。



Like の前後に全角のブランクがある場合[演算子がありません]と出ます。
No.1さんの回答を<全角のブランク抜き>で!!
    • good
    • 0
この回答へのお礼

ありがとうございました。
結果的には、シングルクォート(ダブルクォートでもいいのですね)と、%→*の2重の罠にはまっていたようでした。
回答感謝いたします。

お礼日時:2006/02/09 17:47

s_husky です。



回答をキャンセルします。
MDBと仮定して 

Like '*A*'を
Like '%A%'と書いても
検索しないだけですね!

[演算子が無い]というエラーメッセージの原因ではないようです。
    • good
    • 0

フィールド名 like '%文字%'



単に シングルクオーテーションが無いだけ!?
それとも、

フィールド名 like '*文字*'

クライアント/サーバー系か MDB なのか不明なので判りません。
    • good
    • 0

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