1 Listendatei aus mehreren Einzeldateien

Hallo allerseits,

ich stehe vor folgender Problematik:

ich möchte aus mehreren einzelnen Dateien (mit fortlaufender Nummer, z.B. PO-5011.xls, PO-5012.xls, usw.) ausgewählte Felder
in einer einzigen Datei (Uebersicht.xls) zusammenfassen.

Wie ich die Felder in die Datei bekomme, ist NICHT das Problem.

Das Problem ist, dass die einzelnen Datein erst nach und nach erstellt werden und ich einen Weg suche die Übersichtsdatei
mit so wenig Aufwand wie möglich zu aktualisieren, also im Optimum
komplett automatisiert beim Speichern der PO-xxxx Dateien oder beim öffnen der Übersicht.

Das Problem, dass ich mit meinem Lösungsweg habe, ist, dass ich die Formeln in der Überischtsdatei nicht jedes Mal anpassen möchte, und ich nicht genau weiß, wie ich den Teil der Formel, in dem der fortlaufende Dateiname ist, so verändere (evtl. ausgliedere), dass Excel die Formel annimmt.

Vorab vielen Dank für Eure Hilfe.

Viele Grüße
Dennis

ich möchte aus mehreren einzelnen Dateien (mit fortlaufender
Nummer, z.B. PO-5011.xls, PO-5012.xls, usw.) ausgewählte
Felder in einer einzigen Datei (Uebersicht.xls) zusammenfassen.

wieviele dateien können das mal mehr werden, ist das abschätzbar? Wenn überschaubar, könntest du all diese Dateien schon leer anlegen und in den Formeln mit auswerten.

Wie ich die Felder in die Datei bekomme, ist NICHT das
Problem.

Irgendwie doch :smile:

Das Problem ist, dass die einzelnen Datein erst nach und nach
erstellt werden und ich einen Weg suche die Übersichtsdatei
mit so wenig Aufwand wie möglich zu aktualisieren, also im
Optimum komplett automatisiert beim Speichern der PO-xxxx Dateien
oder beim öffnen der Übersicht.

Vba zu starten beim Öffnen der Übersichtsdatei ist der einfachere Weg.
Damit its es kein Problem alle vorhanden PO-xxx Dateien auszulesen, nur was soll dann mit den Daten genau geschehen?

zeige mal alle vorhanden Formeln (die sich auf die PO-xxx Dateien beziehen) und in welchen Zellen sie stehen.

Gruß
Reinhard

Hallo!

Mein Problem war auch Umsatzdaten von (> 100) in einer Gesamt- Datei schnell zu sehen.
Das funktionierte gut; nur gut!,wenn die Hauptdatei und die einzelnen „Verkaufsbezirks-Dateien“ auf einem Server und auf dem selben Ordner/Verzeichnis lagen, sehr schnell.
MfG

Hallo Reinhard,

eine Beispielformel lautet:

=’[PO-5050.xls]Tabelle1’!$E$20

Im Prinzip steht in einer Zeile der Übersichtsdatei dieselbe Formel, nur mit anderen Feldern (in diesem Fall E20).

Von Zeile zu Zeile verändert sich dann eben noch die PO-xxxx.xls Datei.

Auf dem Gebiet VBA hab ich leider noch nie was gemacht, aber
wenn es sonst keine Lösung gibt, muss ich da wohl mal durch…

In einer meiner Recherchen hab ich mal was gelesen von den Befehlen Adresse und Indirekt, weiß aber nicht ob die für dieses problem übertragbar sind…

Gruß
Dennis

Hi Dennis,

eine Beispielformel lautet:
=’[PO-5050.xls]Tabelle1’!$E$20
Im Prinzip steht in einer Zeile der Übersichtsdatei dieselbe
Formel, nur mit anderen Feldern (in diesem Fall E20).
Von Zeile zu Zeile verändert sich dann eben noch die
PO-xxxx.xls Datei.

ich konnte mich nicht richtig verständlich machen :frowning:
Beim Öffnen der Übersichtsdatei kann man automatisch ein makro starten daß überprüft wieviele POxxx-Dateien es gibt und daß da auch gleiche die gewünschten Zellen ausliest, alles kein Akt.

Problem ist, wohin mit den Daten! Wenn das Makro Formeln ergänzen anbändern soll, muß das Makro natürlich wissen in welchen Zellen die stehen.
Insofern habe ich von einer einzigen Formel nix.

Was ist mit der Idee alle Dateien schonmal vorab zu erzeugen?

Alt+F11, Einfügen–Modul, Code reinkopieren, Lookin-Verzeichnis anpassen, Makro starten

Option Explicit
'
Sub Auslesen()
Dim fs As FileSearch, F As Long, strSource As String, strPath As String
On Error Resume Next
Set fs = Application.FileSearch
strPath = "H:\"
With fs
 .LookIn = strPath
 .SearchSubFolders = False
 .Filename = "\*.xls"
 If .Execute() \> 0 Then
 For F = 1 To .FoundFiles.Count
 strSource = "'" & strPath & "[" & Mid(.FoundFiles(F), InStrRev(.FoundFiles(F), "\") + 1)
 strSource = strSource & "]Tabelle1'!R20C5"
 MsgBox "Tabelle1!E20 in" & Chr(13) & .FoundFiles(F) & Chr(13) & " hat den Wert" & Chr(13) & ExecuteExcel4Macro(strSource)
 Next F
 End If
End With
End Sub

Auf dem Gebiet VBA hab ich leider noch nie was gemacht, aber
wenn es sonst keine Lösung gibt, muss ich da wohl mal durch…

Gute Idee, erste Übung, wie starte ich das obige Makro :smile:
a) aus dem Editor heraus
b) aus Excel heraus

In einer meiner Recherchen hab ich mal was gelesen von den
Befehlen Adresse und Indirekt, weiß aber nicht ob die für
dieses problem übertragbar sind…

Jain, das Problem ist ohne Vba eine Lösung mit Formeln zu basteln die eine unbekannte Anzahl POxxx-Dateien auswerten können müßte

Gruß
Reinhard

Mein Problem war auch Umsatzdaten von (> 100) in einer
Gesamt- Datei schnell zu sehen.
Das funktionierte gut; nur gut!,wenn die Hauptdatei und die
einzelnen „Verkaufsbezirks-Dateien“ auf einem Server und auf
dem selben Ordner/Verzeichnis lagen, sehr schnell.

Hallo Heima,

okay Dennis stellt alle seine Dateien in ein Verzeichnis. Und dann?

Gruß
Reinhard