0

2 つのコンボ ボックスがあり、Combo_A は Combo_B にクエリ文字列を設定します。コンボ B から選択肢を選択して [実行] ボタンを押すと、コンボ A での選択に基づいて 2 つのクエリのいずれかが実行されます。Combo_A で選択肢 1 が選択されている場合、go ボタンはクエリ A を実行し、Combo_A で選択肢 2 が選択されている場合、go ボタンはクエリ B を実行します。 DoCmd.OpenQuery_Click。

私の問題は、これをさらに一歩進めたいということです。チェックボックスが選択されている場合は、上記の結果を別のクエリと相互参照したいと思います。選択されていない場合は、現在設計されているのとまったく同じように動作する必要があります。クエリを作成できることはわかっていますが、vba で作業するのは苦手です。クエリを表す変数名を使用して、別のクエリと結合できますか? ここに私のvbaコードがあります。

Option Compare Database



Private Sub AgencyorCarrierSelection_AfterUpdate()
If AgencyorCarrierSelection = "By Insurance Carrier" Then
    Combo7.Visible = True
    Text13.Value = "Select of of the following Carriers:"
    Text13.Visible = True
    Combo7.RowSource = "SELECT [tblRefInsuranceCarriers].[InsuranceCarrierID], [tblRefInsuranceCarriers].[CarrierName] FROM [tblRefInsuranceCarriers] ORDER BY [CarrierName];"
Else
    Combo7.Visible = True
    Text13.Value = "Select of of the following Agencies:"
    Text13.Visible = True
    Combo7.RowSource = "SELECT [tblRefInsuranceAgencies].[InsuranceAgencyID], [tblRefInsuranceAgencies].[AgencyName] FROM [tblRefInsuranceAgencies] ORDER BY [AgencyName]"
End If
End Sub
Private Sub lblSwitchboard_Click()
DoCmd.OpenForm "switchboard", acNormal
DoCmd.Close acForm, "frmInsuranceInformationConnect"
End Sub
Private Sub RunAgencyorCarrierQuery_Click()
On Error GoTo Err_RunAgencyorCarrierQuery_Click

Dim stDocName As String
If AgencyorCarrierSelection = "By Insurance Carrier" Then
    stDocName = "qryInsuranceCarrierAgentPremiumBreakout_Carrier"
Else
    stDocName = "qryInsuranceCarrierAgentPremiumBreakout_Agency"
End If

DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_RunAgencyorCarrierQuery_Click:
Exit Sub

Err_RunAgencyorCarrierQuery_Click:
MsgBox Err.Description
Resume Exit_RunAgencyorCarrierQuery_Click

End Sub
4

1 に答える 1

0

したがって、基本的に同じクエリ (A または B) を使用しますが、ボックスをチェックすると、結果が 1 つの追加基準によって制限されます。課題は、基準が結合された別のテーブルを必要とすることです。

最も簡単なのは、A と B に一致する C と D のクエリを作成することですが、追加のテーブルがあります。次にif...then、すでに行っているのと同じように、目的のクエリに移動します。

または、A クエリと B クエリに結合テーブルを含めて、追加の条件を使用できるようにし、パラメーター クエリを使用してその条件を使用するかどうかを指定することもできます。それは複雑に思えます。

于 2012-07-27T20:11:23.017 に答える