3

QueriesSubFormAccess 2010内で、リストボックスから選択QueryListBoxしてボタンをクリックすると、サブフォーム内にクエリを表示するフォームを作成しようとしていますrunbtn。リンクされたサブフォーム内にクエリを表示し、リストボックスで選択した別の選択肢からこの手順全体を再度実行してボタンをクリックすると変更されるはずです。

現時点では、次のようにプログラムされたときに、新しいタスクウィンドウにクエリを表示する場合にのみ機能させることができます。

QueriesListBox リストボックス - SQL ビュー

SELECT MSysObjects.[Name]
FROM MSysObjects
WHERE (((MSysObjects.[Type])=5) AND ((Left([Name],1))<>"~"))
ORDER BY MSysObjects.[Name];

runbtn ボタン - VBA ビュー

Private Sub runbtn_Click()
DoCmd.OpenQuery QueryListBox, acViewNormal
End Sub

それは機能し、クエリリストからクエリの1つを開いて表示するだけのように見えますが、これは望ましくありません。

これは簡単なことかもしれませんが、SQL、VBA、またはマクロのいずれかでどのように行われるかわかりません。これが機能するために必要であると推測しています

4

1 に答える 1

3

わかりました、これがそれを行う1つの方法です。まず、サブフォームがソース オブジェクトなしで設定されていることを確認してください。次に、ボタンのクリックを次のように設定します。

Private Sub runbtn_Click()
    Me.QueriesSubForm.SourceObject = "Query." & QueryListBox.Value
End Sub

これにより、探している結果が得られるはずです。または、フォームを開いたときに特定のクエリを表示するようにしたい場合は、サブフォームのソース オブジェクトをそのクエリに設定することができます。プロパティ ウィンドウを使用してソース オブジェクトのドロップダウンを見つけ、フォームを開いたときに表示するクエリを見つけます。

于 2013-04-04T21:22:24.167 に答える