0

2 つのボタン (Query1 と Query2)、テキスト ボックス (InputName)、ラベル (Output) があるユーザー フォームをデザインしたいと思います。

ユーザーがボタンを押すと、リンクされた SQL クエリが特定のパラメーター (InputName) で実行されます。出力は、ラベル (出力) に表示されます。

1) SQL クエリをパラメータ化するにはどうすればよいですか? 2) イベント「ボタン クエリ 1 が押されました」をパラメータを使用して SQL クエリにリンクするにはどうすればよいですか?

ありがとうございました。

4

1 に答える 1

0

これを行うにはいくつかの方法があります。ラベル出力として使用できる単一レコードの単一フィールドのみに関心があると仮定すると、フォームに属するコード モジュールに次の VBA を配置できます。

Private Sub Query1_Click()
    Dim varResult as Variant
    varResult = DLookup("FieldYouAreInterestedIn", "TableName", _
        "Name = '" & InputName & "'")
    If Not IsNull(varResult) Then
        Output.Caption = varResult
    End If
End Sub

コード モジュールを Visual Basic Editor で開くには、フォームをデザイン ビューで開き、リボンの [デザイン] タブ (画面の右端) で [コードの表示] を選択します。

私の知る限り、このアプローチ ( を使用) はSQL インジェクションDLookup()に対して脆弱ではありませんが、これについては自分で調査する必要があります。

この質問は約 7 週間前に投稿されたものなので、すでにすべてを理解しているかもしれません。

于 2013-12-07T11:52:05.957 に答える