Sub ProcessFromFolder ()
'Deze macro opent beurtelings elk dossier en haalt de gegevens uit het, registreert het in het gegevensbestand,
'sluit het dossier, en bewegingen op het volgende dossier. De macro registreert ook het dossier - noem zodat
'het zal slechts een dossier verwerken als het niet voordien is verwerkt. Het gebruikt een „inzameling“ voor
de 'dossiernamen.
Schemerige fso als Voorwerp, fld als Voorwerp, fil als Voorwerp
Schemerige coll als Nieuwe Inzameling
Schemerige FileListWs als Aantekenvel
Schemerige SourceWs als Aantekenvel
Schemerige SourceWb als Werkboek
Schemerige DestWs als Aantekenvel
Schemerige TotFiles zoals lang
Schemerige Teller zoals lang
Schemerige WasOpen zoals Van Boole
Schemerige I zoals lang
Schemerige rowe zoals lang
Schemerig col. zoals lang
Schemerige lastrow zoals lang
Schemerige errorflag als Koord
Application.ScreenUpdating = Vals
errorflag = ""
'Bepaal reeds verwerkte dossiers
Plaats FileListWs = ThisWorkbook.Worksheets (de „Lijst van het Dossier“)
Plaats DestWs = ThisWorkbook.Worksheets („Gegevensbestand“)
Met FileListWs
TotFiles = Application.CountA (. [a: a])
Als TotFiles > 0 toen
Voor Teller = 1 aan TotFiles
coll. Voeg toe. Cellen (Tegen, 1). Cellen (Tegen, 1)
Daarna
Eind als
Eind met
'bekijk omslag
Plaats fso = CreateObject („Scripting.FileSystemObject“)
'zet volledige weg aan omslag die gegevensdossiers in de volgende lijn van code bevatten
Plaats fld = fso.GetFolder („C:\Documents and Settings\Patrick & thuc-Nghi \ Mijn \ Excel dossiers \ CaptG \ van Documenten \ Patrick“)
Voor Elke fil in fld. Dossiers
Op Fout hervat daarna
coll. Voeg fil toe. Naam, fil. Naam
Als 0 <> me dan vergis
'dien reeds verwerkt in, doen niets
Err.Clear
Anders
'nog verwerkt niet; proces het
Met FileListWs
Als TotFiles = 0 toen
. [A2] = fil. Naam
Anders
'. Cellen (. Rows.Count, 1). Eind (xlUp). Compensatie (1, 0) = fil. Naam
. Cellen (65536, 1). Eind (xlUp). Compensatie (1, 0) = fil. Naam
Eind als
Eind met
'zie of is het reeds open
Plaats SourceWb = Werkboeken (fil. Naam)
Als 0 <> me dan vergis
'was niet open
WasOpen = Vals
Vastgestelde SourceWb = Workbooks.Open (fil. Weg)
Anders
WasOpen = Waar
Eind als
Vastgestelde SourceWs = SourceWb.Sheets (1)
Met SourceWs
. Waaier (. Cellen (2, „A“). Cellen (. Rows.Count, „A“). Eind (xlUp). Compensatie (0, 14)). Exemplaar _
DestWs.Cells (DestWs.Rows.Count, „A“). Eind (xlUp). Compensatie (1, 0)
Eind met
errorflag = ""
Als niet Valse WasOpen toen SourceWb.Close
Eind als
Daarna
Reeks coll = niets
Reeks fil = niets
Reeks fld = niets
Vastgestelde fso = niets
Application.ScreenUpdating = Waar
„Gedaane“ MsgBox
Sub van het eind
|