2016-06-01 6 views
0

私は、5つのテーブル、3つのクエリ、3つのレポート(クエリがレコードセットです)、3つのレポートがそれぞれレコードセットのいくつかのフィールドを示すデータベースを持っています。問題は、同じコードを持っていても、サブルーチンの1つに矛盾した結果があることです。それは、各スーパーバイザをサイクリングしてレポートを作成し、それをやり直すようなものです。ループに巻き込まれ、どこに問題があるのか​​わかりません。誰かが助けてくれると願っています。ルーピングとレポート作成の不一致

Private Sub cmdFedInvest_Click() 
Dim x   As String 
Dim y   As String 
Dim StrSQL  As String 
Dim stWhereStr As String 'Where Condition' 
Dim stSection As String 'Selection from drop down list 
Dim stfile  As String 
Dim stDocName As String 
Dim StrEmail As String 

StrSQL = "SELECT DISTINCTROW [qryActT8_Sup].[Sup], [qryActT8_Sup].Sup_email " & _ 
"FROM [qryActT8_Sup];" 
    y = Year(Date) 

Dim db As DAO.Database 
Dim rst As DAO.Recordset 
Set db = CurrentDb 
Dim qdTemp As DAO.QueryDef 
Set qdTemp = db.CreateQueryDef("", StrSQL) 
Set rst = qdTemp.OpenRecordset() 

If rst.EOF And rst.BOF Then 
    MsgBox "No data available for the Ledger Process routine." 
Else 
    Debug.Print rst.Fields.Count 
    rst.MoveFirst 
    Do While Not rst.EOF 
     x = rst![Sup] 
     StrEmail = rst![Sup_email] 
     stDocName = "FedInvest - ISSR - T8 Recertification Report" 
     stWhereStr = "[qryActT8_Sup].[SUP]= '" & x & "'" 
     stfile = Me.txtLocationSaveFI & "\" & x & " - " & y & " FedInvest Recertification.pdf" 
     DoCmd.OpenReport stDocName, acPreview, , stWhereStr 
     'DoCmd.SendObject acSendReport, stDocName, acFormatPDF, StrEmail, , , "2016 FedInvest Recertification", "" 
     DoCmd.OutputTo acOutputReport, stDocName, acFormatPDF, stfile 
     DoCmd.Close acReport, stDocName 
     rst.MoveNext 
    Loop 
End If 
rst.Close 
Set rst = Nothing 
End Sub 

答えて

0

プレビューとPDF出力の両方にレポートを開きます。

PDFのみが必要な場合は、プレビューをスキップしてください。