VorProcessFromFolder ()
'Dieses Makro öffnet jede Akte der Reihe nach und extrahiert die Daten von ihm, notiert es in der Datenbank,
'schließt die Akte und weitergeht auf die folgende Akte gende. Das Makro notiert auch den Dateinamen damit
'es verarbeitet nur eine Akte, wenn es nicht vorher verarbeitet worden. Es benutzt eine „Ansammlung“ für
'die Aktennamen.
Schwaches fso als Gegenstand, fld als Gegenstand, fil als Gegenstand
Schwaches coll als neue Ansammlung
Schwaches FileListWs als Arbeitsblatt
Schwaches SourceWs als Arbeitsblatt
Schwaches SourceWb als Arbeitsbuch
Schwaches DestWs als Arbeitsblatt
Schwaches TotFiles als lang
Schwacher Kostenzähler als lang
Schwaches WasOpen, wie Boolesch
I als lang verdunkeln
Rowe als lang verdunkeln
Spalte als lang verdunkeln
Lastrow als lang verdunkeln
Errorflag als Schnur verdunkeln
Application.ScreenUpdating = falsch
errorflag = ""
'Die Akten feststellen, die bereits verarbeitet
FileListWs = ThisWorkbook.Worksheets („Akten-Liste“) einstellen
DestWs = ThisWorkbook.Worksheets („Datenbank“) einstellen
Mit FileListWs
TotFiles = Application.CountA (. [a: a])
Wenn TotFiles > 0 dann
Für Kostenzähler = 1 zu TotFiles
coll. Hinzufügen. Zellen (Gegen, 1). Zellen (Gegen, 1)
Zunächst
Beenden wenn
Mit beenden
'Faltblatt betrachten
Fso = CreateObject („Scripting.FileSystemObject“) einstellen
'vollen Weg zum Faltblatt setzen, das Dateien in der folgenden Linie des Codes enthält
Fld = fso.GetFolder einstellen („C:\Documents and Settings\Patrick u. Thuc-Nghi \ meine Dokumente \ Patricks \ Excel-Akten \ CaptG \ ")
Für jedes fil im fld. Akten
Auf Störungs-Zusammenfassung zunächst
coll. Fil addieren. Name, fil. Name
Wenn 0 <> dann irren
'die bereits verarbeitete Akte, tun nichts
Err.Clear
Sonst
'nicht noch verarbeitet; es verarbeiten
Mit FileListWs
Wenn TotFiles = 0 dann
. [A2] = fil. Name
Sonst
'. Zellen (. Rows.Count, 1).End (xlUp). Versatz (1, 0) = fil. Name
. Zellen (65536, 1).End (xlUp). Versatz (1, 0) = fil. Name
Beenden wenn
Mit beenden
'sehen, wenn er bereits geöffnet ist
SourceWb = Arbeitsbücher einstellen (fil. Name)
Wenn 0 <> dann irren
'war nicht geöffnet
WasOpen = falsch
SourceWb = Workbooks.Open einstellen (fil. Weg)
Sonst
WasOpen = ausrichten en
Beenden wenn
SourceWs = SourceWb.Sheets einstellen (1)
Mit SourceWs
. Strecke (. Zellen (2, „A“). Zellen (. Rows.Count, „A“). Ende (xlUp). Versatz (0, 14)). _ Kopieren
DestWs.Cells (DestWs.Rows.Count, „A“). Ende (xlUp). Versatz (1, 0)
Ende mit
errorflag = ""
Wenn nicht WasOpen dann SourceWb.Close falsch
Beenden wenn
Zunächst
Coll einstellen = nichts
Fil einstellen = nichts
Fld einstellen = nichts
Fso einstellen = nichts
Application.ScreenUpdating = ausrichten en
MsgBox „getan“
Enden-Unterseeboot
|