Privates VorLoopThroughXLS_ConsolidateOneSheet ()
'öffnet alle Arbeitsbücher in einem Faltblatt und vereinigt sie in einem Blatt auf dem aktiven Arbeitsbuch
application.ScreenUpdating = falscher 'Sperrungsschirm, der aktualisiert, um das Schirmblitzen zu vermeiden
Schwaches wbk1 als Arbeitsbuch, wbk2 als Arbeitsbuch, i als lang, strWbk als Schnur, sht1 als Arbeitsblatt
Schwaches blFirst, wie Boolesch
Schwache strWbkNames (1 bis 500) als Schnur, Dateiname als Schnur, intFileCount als lang, intWbkLoop als lang
'*************** UPDATE-PARAMETER HIER *************************
Const strpath als Schnur = „C:\Temp\test“ 'Änderung an den Faltblättern, in denen Sie Ihre Akten fallenlassen
Const blHeader, wie Boolesch = ausrichten 'ausrichten, wenn Ihre Daten Überschriften haben en, falsch anders
'**************************************************************
Einstellen wbk1 = ActiveWorkbook
Einstellen sht1 = ActiveSheet
blFirst = ausrichten en
Dateiname = Dir (strpath u. „\ *.xls“)
Tun, während Dateiname <> ""
intFileCount = intFileCount + 1
strWbkNames (intFileCount) = Dateiname
Dateiname = Dir
Schleife
application.DisplayAlerts = falsch
Für intWbkLoop = 1 zum intFileCount
Wenn application.WorksheetFunction.CountA (sht1.Columns (1)) = 0 dann
sht1.range („A1“). Auserwählt
Sonst
sht1.range („A“ u. sht1.Rows.Count). Ende (xlUp). Versatz (1, 0). Auserwählt
Beenden wenn
Einstellen wbk2 = Workbooks.Open (strpath u. „\“ u. strWbkNames (intWbkLoop))
Mit wbk2.Sheets (1)
Wenn blFirst = dann ausrichten
blFirst = falsch
.UsedRange.Copy
Sonst
Wenn blHeader = dann ausrichten
.UsedRange.Offset (1).Copy
Sonst
.UsedRange.Copy
Beenden wenn
Beenden wenn
Mit beenden
sht1.Paste
wbk2.Close (falsch)
Zunächst
application.DisplayAlerts = ausrichten en
application.ScreenUpdating = ausrichten en
Enden-Unterseeboot
|