UnderProcessFromFolder ()
'Denna makro öppnar varje sparar i sin tur och extrakt datan från den, rekord det i databasen,
'slut spara och flyttningar på till det nästa sparar. Makroen antecknar också spara - namnge så att
'den ska endast processaa en spara, om den inte har bearbetats för. Den använder ”en samling” för
'spara namnger.
Dunkel fso som anmärker, fld som anmärker, fil som anmärker
Dunkel coll som ny samling
Dunkla FileListWs som arbetssedeln
Dunkla SourceWs som arbetssedeln
Dunkla SourceWb som arbetsboken
Dunkla DestWs som arbetssedeln
Dunkla TotFiles som Long
Dunkelt kontra som Long
Dunkla WasOpen som Boolean
Dunkelt I som Long
Dunkel rowe som Long
Dunkel kolonn som Long
Dunkel lastrow som Long
Dunkel errorflag som stränger
Application.ScreenUpdating = falskt
errorflag = "",
'Bestäm sparar bearbetat redan
Fastställda FileListWs = ThisWorkbook.Worksheets (”spara listar”),
Fastställda DestWs = ThisWorkbook.Worksheets (”databas”)
Med FileListWs
TotFiles = Application.CountA (. [a: a])
Om TotFiles > 0 därefter
För kontra = 1 till TotFiles
coll. Tillfoga. Celler (kontra, 1). Celler (kontra, 1),
Därefter
Avsluta om
Avsluta med
'se mappen
Fastställd fso = CreateObject (”Scripting.FileSystemObject”)
'sätt den fulla banan till mappen som innehåller datafiler i det nästa, fodrar av kodifierar
Fastställd fld = fso.GetFolder (”C:\Documents and Settings\Patrick & Thuc-Nghi \ min dokument \ Patricks \ Excel sparar \ CaptG \”),
För varje fil i fld. Sparar
På felmeritförteckning därefter
coll. Tillfoga fil. Namnge fil. Namnge
Om fela <> 0 därefter
'spara redan bearbetat, gör ingenting
Err.Clear
Annars
'inte bearbetat ännu; bearbeta den
Med FileListWs
Om TotFiles = 0 därefter
. [A2] = fil. Känt
Annars
'. Celler (. Rows.Count 1). Avsluta (xlUp). Offset (1, 0) = fil. Känt
. Celler (65536, 1). Avsluta (xlUp). Offset (1, 0) = fil. Känt
Avsluta om
Avsluta med
'se, om den är redan öppen
Fastställda SourceWb = arbetsböcker (fil. Känt)
Om fela <> 0 därefter
'var inte öppet
WasOpen = falskt
Fastställda SourceWb = Workbooks.Open (fil. Bana)
Annars
WasOpen = True
Avsluta om
Fastställda SourceWs = SourceWb.Sheets (1)
Med SourceWs
. Spänna (. Celler (2, ”A”). Celler (. Rows.Count, ”A”). Avsluta (xlUp). Offset (0, 14)). Kopiera _,
DestWs.Cells (DestWs.Rows.Count, ”A”). Avsluta (xlUp). Offset (1, 0)
Avsluta med
errorflag = "",
Om inte falska WasOpen därefter SourceWb.Close
Avsluta om
Därefter
Fastställd coll = ingenting
Fastställd fil = ingenting
Fastställd fld = ingenting
Fastställd fso = ingenting
Application.ScreenUpdating = True
”Gjorda” MsgBox,
Avsluta suben
|