0

「Greaterthen」、「Less then」、「Equal to」の値を持つコンボボックスが1つあり、「1200」などのテキストボックスに値を入力しているので、コンボボックスから「Greaterthen」を選択すると、データベースから取得する必要のある結果は1200より大きくなります。

LIKE "%"を使用して同じものを検索しようとしましたが、失敗しました。

SQLを使用してvbaで記述されたものを検索する方法をコードで教えてください。

4

1 に答える 1

0

動的 SQL クエリに等価性を設定したいようですね。

そのためには、次の点に注意してください。
a) コンボ ボックスでは、等値を含む文字列変数で等値と共に条件を設定する必要があります。これは、cboSomeCondition が変更された場合、strVarEquality も必要な等値に設定する必要があることを意味します。cboSomeCondition で「より大きい」を選択した場合は、変数 strVarEquality を ">" に設定する必要があります。残りの条件についても同じ - 「より小さい」 -> 「<」および「等しい」 -> 「=」

b)SQL文字列を設定する変数(使用している接続のタイプはわかりませんが、ここではConnectionStringが設定されたADOを想定しています)、txtValueTobeEvaluatedを比較する値を持つフィールドと見なしますデータベースの値に対して、次のように配置するだけです:

(someAdoDBConnection).(someSQL)="SELECT field_a,field_b,field_c FROM table_x WHERE field_a " & strVarEquality & " " & txtValuetoBeEvaluated

これが役立つことを願っています。

于 2013-01-30T16:33:29.563 に答える