Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Dateien aktualisieren aus Liste in WS heraus

Betrifft: Dateien aktualisieren aus Liste in WS heraus von: Torsten K.
Geschrieben am: 13.08.2004 13:16:18

Hallo zusammen,

in der nachfolgenden Datei habe ich einen VBA-Code erarbeitet, mit dem ich verschiedene Dateien aktualisieren kann und gleichzeitig über Variablen Summen zu bestimmten Daten ziehen und in ein WS schreiben kann:

https://www.herber.de/bbs/user/9510.xls

Im Einzelnen: In einer Zentraldatei habe ich pro Kostenstelle die Gehälter und Incentives hinterlegt. Diese Daten gelangen über eine SVerweis-Verknüpfung in die Budgetdateien der Kostenstellen. Nachdem die Personalkostendaten aktualisiert wurden, möchte ich natürlich nicht alle einzelnen Budgetdateien der Kostenstellen manuell öffnen, aktualisieren, speichern und schließen sondern
mit Hilfe meines VBA-Codes updaten. Gleichzeitig möchte ich aus Kontrollzwecken jeweils die Summen der Incentives/Gehälter in meine UpDate-Datei eintragen lassen. Das ist mir mit meinem Code auch alles gelungen.
Allerdings brauche ich für folgenden offenen Punkt Eure Hilfe:

Wie Ihr im Code sehen könnt, habe ich die zu aktualisierenden Budgetdateien (NL1_TEST.xls, NL2_TEST.xls, INDUS_TEST.xls) einzeln zur Abarbeitung eingetragen. Ich hätte jedoch gern, daß Excel die Liste in dem WS("FILES") abarbeitet, wobei zu berücksichten ist, daß die Liste mal kürze oder länger sein kann, als angegeben.

Ich wäre Euch daher sehr dankbar, wenn Ihr mir helfen könnt.

Viele Grüße
Torsten

  


Betrifft: AW: Dateien aktualisieren aus Liste in WS heraus von: Uduuh
Geschrieben am: 13.08.2004 13:31:51

Hallo,
etwa so:
for i=1 to sheets("Files").Range("A1").end(xldown).row
wbName=sheets("files").cells(i,1)
workbooks.open wbname
'Deine Aktionen
workbooks(wbname).close, true
next i

Gruß aus'm Pott
Udo


  


Betrifft: AW: Dateien aktualisieren aus Liste in WS heraus von: Torsten K.
Geschrieben am: 13.08.2004 14:16:24

Hallo Udo,

schönen Dank für Deine 2. Hilfe heute.
Dein Code läuft wunderbar durch:

Private Sub cmb_UPDATE_Click()

If MsgBox("Sollen die Kostendateien jetzt aktualisiert werden?", vbYesNo) = vbYes Then

Dim EI As Long 'Estimate Incentive
Dim EG As Long 'Estimate Gehalt
Dim BI As Long 'Budget Incentive
Dim BG As Long 'Budget Gehalt
Dim i As Integer
Dim irow As Integer
Dim wbName As String

Application.ScreenUpdating = False
Application.StatusBar = "Dieser Vorgang dauert ein paar Minuten. Bitte Geduld haben..."
Application.DisplayAlerts = False
Application.EnableEvents = False

For i = 1 To Sheets("FILES").Range("A1").End(xlDown).Row
wbName = Sheets("FILES").Cells(i, 1)
Workbooks.Open wbName
ActiveWorkbook.Save
EI = EI + Sheets("ENTER").Range("I40").Value
EG = EG + Sheets("ENTER").Range("I42").Value
BI = BI + Sheets("ENTER").Range("O40").Value
BG = BG + Sheets("ENTER").Range("O42").Value
ActiveWorkbook.Close , True
Next i
(...)

mit einem kleinen Schöheitsfehler: Excel bringt bei jeder zu öffnenden Datei die Meldung:
"Die Datei enthält automatische Verknüpfungen in einer anderen Arbeitsmappe. (...)"
Ich dachte, daß würde mit Application.DisplayAlerts = False abgefangen?
Wo liegt denn noch der Fehler?

Gruß
Torsten


  


Betrifft: workbooks.open wbname, 3 von: Uduuh
Geschrieben am: 13.08.2004 14:22:10




  


Betrifft: AW: erledigt - mT von: Torsten K.
Geschrieben am: 13.08.2004 14:34:53

Hallo Udo,

sorry für diese blöde Nachfrage. Ich muß gestehen, daß ich das selber hätte herausfinden können/müssen!! (Schließlich wies der ursprüngliche Code die "3" ja auch aus)
Vielen Dank nochmals.

Gruß
Torsten

P.S. Zu dieser UpDate-Datei habe ich abschließend noch eine dritte Frage. Die stelle ich
gleich mit dem aktuellen Code nochmals ins Forum. Du hast mir bis jetzt so gut und zügig helfen können, hast Du die Geduld, Dir den letzten Thread zu diesem Thema auch noch anschauen? Danke.


 

Beiträge aus den Excel-Beispielen zum Thema "Dateien aktualisieren aus Liste in WS heraus"