最終的に、クロス集計レポートが動的に更新されましたが、何らかの理由で日付パラメータがレポートまたはクエリに渡されませんでした。クロス集計クエリデータパラメータにフィルタリングクエリが使用されていません
クロス集計レポートを更新するレコードセットがあります。また、vbaの日付パラメータをホバーすると、正しい日付が表示されますが、レポートにはまだすべてのデータが表示されています。
クエリには、すべての日付のデータも表示されます。それは私が質問で間違っていたことですか?私はすべてのフォーラムのように思えるだけで解決策を見つけることができない、あらゆるオプションを試してみました。
これは、クエリ
PARAMETERS [Forms]![frm_menu]![txtFromDate] DateTime,
[Forms]![frm_menu]![txtToDate] DateTime,
[Forms]![frm_menu]![cmbMplTag1] Text (255),
[Forms]![frm_menu]![cmbMplTag2] Text (255),
[Forms]![frm_menu]![cmbMplTag3] Text (255),
[Forms]![frm_menu]![cmbMplTag4] Text (255),
[Forms]![frm_menu]![cmbMplTag5] Text (255);
TRANSFORM First(tbl_logdata.Input_Value) AS FirstOfInput_Value
SELECT tbl_logdata.Log_Date, tbl_logdata.Log_Time
FROM tbl_logdata
WHERE (((tbl_logdata.Log_Date) Between [Forms]![frm_menu]![txtFromDate]
And [Forms]![frm_menu]![txtToDate])
AND ((tbl_logdata.tag)=[Forms]![frm_menu]![cmbMplTag1]))
OR (((tbl_logdata.tag)=[Forms]![frm_menu]![cmbMplTag2]))
OR (((tbl_logdata.tag)=[Forms]![frm_menu]![cmbMplTag3]))
OR (((tbl_logdata.tag)=[Forms]![frm_menu]![cmbMplTag4]))
OR (((tbl_logdata.tag)=[Forms]![frm_menu]![cmbMplTag5]))
GROUP BY tbl_logdata.Log_Date, tbl_logdata.Log_Time
PIVOT tbl_logdata.tag;
ためのSQLであり、これは、クロス集計レポートのVBAです。 cmbMplTag番号のパラメータが正常に動作している:
Private Sub Report_Open(Cancel As Integer)
Dim rst As dao.Recordset
Dim db As dao.Database
Dim qdf As dao.QueryDef
Dim i As Integer
Dim j As Integer
Set db = CurrentDb
Set qdf = db.QueryDefs("qry_MplTagsSummary")
'on hover shows date from textbox'
qdf.Parameters("Forms!frm_menu!txtFromDate") = [Forms]![frm_menu]![txtFromDate]
'on hover shows date from textbox'
qdf.Parameters("Forms!frm_menu!txtToDate") = [Forms]![frm_menu]![txtToDate]
qdf.Parameters("[Forms]![frm_menu]![cmbMplTag1]") = [Forms]![frm_menu]![cmbMplTag1]
qdf.Parameters("[Forms]![frm_menu]![cmbMplTag2]") = [Forms]![frm_menu]![cmbMplTag2]
qdf.Parameters("[Forms]![frm_menu]![cmbMplTag3]") = [Forms]![frm_menu]![cmbMplTag3]
qdf.Parameters("[Forms]![frm_menu]![cmbMplTag4]") = [Forms]![frm_menu]![cmbMplTag4]
qdf.Parameters("[Forms]![frm_menu]![cmbMplTag5]") = [Forms]![frm_menu]![cmbMplTag5]
Set rst = qdf.OpenRecordset()
rst.MoveFirst
j = -1
i = 0
For i = 0 To rst.Fields.Count - 1
j = j + 1
Select Case j
Case 0
Me.Log_Date.ControlSource = rst.Fields(i).Name
Case 1
Me.Log_Time.ControlSource = rst.Fields(i).Name
Case 2
Me.field1.ControlSource = rst.Fields(i).Name
Case 3
Me.field2.ControlSource = rst.Fields(i).Name
Case 4
Me.Field3.ControlSource = rst.Fields(i).Name
Case 5
Me.Field4.ControlSource = rst.Fields(i).Name
Case 6
Me.Field5.ControlSource = rst.Fields(i).Name
End Select
skip_it:
Next i
rst.Close
Set rst = Nothing
End Sub
が、私は十分な詳細情報を提供していない場合は私に知らせてください/情報
恐ろしい、助けてくれてありがとう。完全に働いた –
好奇心、何が問題になったのですか?私はあなたが上記の答えを受け入れたのを見ます。それは日付形式でしたか? – Parfait
申し訳ありませんが、私は間違ったものを受け入れました。問題を修正した括弧 –