#1
|
|||
|
|||
How to log info about files while looping through many in a folder
I'm creating a macro that loops through all files in a folder and does stuff if a condition is met.
The user needs a report of any files not revised because the condition wasn't met. My code is modular: a loop sub calls another sub to test the condition/do the stuff. I'd like to keep the code modular -- I don't want to modify the loop sub to receive failed-condition info back, and add to an array. Is it possible to collect data (in an array) in a standalone sub that periodically gets the data from another sub, or do I have to modify my loop sub so that it can collect the data, as it's the only sub continuously running for the duration of the work? Maybe this will help: Code:
Sub Loop() Open a file Call EvaluateAndDoStuff Next file When no more files, drop array in CollectListOfFailedFiles into text file End Sub Sub EvaluateAndDoStuff() If condition not met Then Call CollectListOfFailedFiles(strFile) End If End Sub Sub CollectListOfFailedFiles(strFile as String) Array here that collects list of failed files... End Sub |
#2
|
||||
|
||||
You can keep passing variables across functions but I think it is easier to declare a variable so it can be used by all the sub/functions in the module. This then persists and can be added to or read by any of the subs or functions. This illustrates the concept.
Code:
Option Explicit Private arr1() As String, sArr As String Sub TheLoop() Dim i As Integer sArr = "" 'this empties the string in case the macro was run earlier For i = 1 To 10 TheTest i Next i ThePayout: MsgBox sArr arr1 = Split(sArr, "|") End Sub Sub TheTest(i As Integer) If i Mod 2 = 0 Then TheLogger i End If End Sub Sub TheLogger(i As Integer) If sArr = "" Then sArr = "Item " & i Else sArr = sArr & "|" & "Item " & i End If End Sub
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
#3
|
|||
|
|||
Hi Andrew -- A belated thank you for your reply and sample code!
|
Thread Tools | |
Display Modes | |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Looping through a folder of PDF files and saving them as docx | ballpoint | Word VBA | 5 | 11-22-2018 05:18 AM |
Error 4605 when looping through files in folder and deleting comments | Peterson | Word VBA | 2 | 04-19-2018 08:45 AM |
Open csv files & copy and paste info into master file | gbaker | Outlook | 9 | 04-22-2016 11:02 PM |
VBA Word - Search Within Files Containing A String - Copy Files to New Folder | jc491 | Word VBA | 0 | 01-09-2016 12:00 PM |
Move files from one folder to another | obasanla | Word | 1 | 09-28-2012 04:42 PM |