Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How to save messages to a log file?

1 view
Skip to first unread message

Jojo

unread,
Nov 5, 2007, 3:58:35 PM11/5/07
to
I am new to VBA coding. I need to save messages to a log file so I can
monitor my Macro's process by the messages in the log file. Can anyone
give me a sample code to save messages to a file?

Thanks.

-Jojo

Jay Freedman

unread,
Nov 5, 2007, 4:37:00 PM11/5/07
to

Sub demo()
' write messages to a "log file"
'
' This is based on the example in the VBA Help
' for the FreeFile function.

Dim FileNumber As Integer
Dim FileName As String

' Get unused file number
FileNumber = FreeFile

' Construct file name based on date, time
FileName = "C:\temp\test_" & _
Format(Now, "yyyyMMdd_hhmm") & ".log"

' Open the log file
Open FileName For Output As #FileNumber

' While your macro does some work,
' write messages to the file like this:
Write #FileNumber, "This is the first message."
' Do some more work, write another message
Write #FileNumber, "This is the second message."

' When your macro finishes, close the log
Close #FileNumber
End Sub

The "For Output" expression means that if the file already exists, its
contents will be cleared and replaced by what you write next. If you want to
keep the old contents and add the new, change it to "For Append".

--
Regards,
Jay Freedman
Microsoft Word MVP FAQ: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.


Helmut Weber

unread,
Nov 6, 2007, 6:02:37 AM11/6/07
to
Hi Jojo,

in addition to Jay's remarks,
you may find writing error messages to your log-file useful,
of course, only errors you can recover from.

Untested pseudocode!

on error goto myerror
myerror:
Write #FileNumber, err.description, err.number
resume


--
Greetings from Bavaria, Germany

Helmut Weber, MVP WordVBA

Win XP, Office 2003
"red.sys" & Chr$(64) & "t-online.de"

0 new messages