Solved

Using VBA export reports to rtf files with criteria

Posted on 2008-10-02
2
1,541 Views
Last Modified: 2013-11-27
Hello,

I'm trying to export a report to an various rtf files depending on criteria.  The code currently loops through a record set and will export the file but how do I pass it crieria to limit the record set.
With CurrentDb.OpenRecordset("Select Distinct Department from new;", dbOpenForwardOnly)
    While Not .EOF      
        DoCmd.OutputTo acOutputReport, "testreport", acFormatRTF, "C:\exports\" & !Department
   
        .MoveNext
    Wend
.Close
End With

Open in new window

0
Comment
Question by:eshurak
2 Comments
 
LVL 77

Accepted Solution

by:
peter57r earned 500 total points
ID: 22626870
You can't easily.
OutputTo doesn't use filters or Where clauses.

You willhave to find some way of setting the report's recordsource based on the department.
Maybe setting the report's query sql to a value that includes the dapartment criteria.


strsql = " Select * from table where dpartment = '" &  rs!department & "'"
currentdb.querydefs("reportqueryname").sql = strsql
docmd.outputto ......
0
 
LVL 3

Author Comment

by:eshurak
ID: 22627034
Yeah, I just wrote the code below using a similer concept.  It works, but it's ugly.
Dim sql As String
Dim qd As QueryDef
 
Set qd = CurrentDb.QueryDefs("ReportData")
 
With CurrentDb.OpenRecordset("Select Distinct Department from new;", dbOpenForwardOnly)
    While Not .EOF
    
    sql = "SELECT * FROM new WHERE (((new.Department)='" & !Department & "'));"
    qd.sql = sql
    
    
    DoCmd.OutputTo acOutputReport, "testreport", acFormatRTF, "C:\rtf\" & !Department & ".rtf"
    
        .MoveNext
    Wend
.Close
End With

Open in new window

0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
In Part II of this series, I will discuss how to identify all open instances of Excel and enumerate the workbooks, spreadsheets, and named ranges within each of those instances.
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.

735 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question