Export all MS Access SQL queries to text files Export all MS Access SQL queries to text files vba vba

Export all MS Access SQL queries to text files


This should get you started:

  Dim db As DAO.Database  Dim qdf As DAO.QueryDef  Set db = CurrentDB()  For Each qdf In db.QueryDefs    Debug.Print qdf.SQL  Next qdf  Set qdf = Nothing  Set db = Nothing

You can use the File System Object or the built-in VBA File I/O features to write the SQL out to a file. I assume you were asking more about how to get the SQL than you were about how to write out the file, but if you need that, say so in a comment and I'll edit the post (or someone will post their own answer with instructions for that).


Hope this helps.

Public Function query_print()Dim db As DatabaseDim qr As QueryDefSet db = CurrentDbFor Each qr In db.QueryDefs  TextOut (qr.Name)  TextOut (qr.SQL)  TextOut (String(100, "-"))NextEnd FunctionPublic Sub TextOut(OutputString As String)    Dim fh As Long    fh = FreeFile    Open "c:\File.txt" For Append As fh    Print #fh, OutputString    Close fhEnd Sub


This solution include fields in query

Public Sub ListQueries()    ' Author:                     Date:               Contact:    ' André Bernardes             09/09/2010 08:45    bernardess@gmail.com     http://al-bernardes.sites.uol.com.br/    ' Lista todas as queries da aplicação.    ' Listening:    Dim i As Integer    Dim j As Integer    Dim k As Integer    Dim l As Integer    On Error Resume Next    For i = 0 To CurrentDb.QueryDefs.Count - 1        Debug.Print "Query: " & CurrentDb.QueryDefs(i).Name        For j = 0 To CurrentDb.QueryDefs(i).Fields.Count - 1            Debug.Print "Field " & CurrentDb.QueryDefs(i).Fields(j).Name        Next        Debug.Print "  SQL: " & CurrentDb.QueryDefs(i).SQL    NextEnd Sub