Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
984to988
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zellen aus verschiedenen dateien auslesen

zellen aus verschiedenen dateien auslesen
16.06.2008 16:14:30
Raphael
hallo zusammen
gerne möchte ich aus diversen exceldateien verschiedene zellen auslesen. ich habe dies mal mit dem folgenden code funktioniert. dieser funktioniert auch, problem habe ich aber jetzt, da in den einzelnen dateien die gewünschten zellen nicht im erste sheet ist sondern in einem andern mit dem namen "verschiedeneinfos"
besten dank für eure hilfe
raphi
mein code:

Sub DatenEinlesen()
' Daten aus mehreren Dateien in eine neue Datei einlesen
Dim wkbNeu As Workbook, wksDataSheet As Worksheet, Pfad As String
Dim Datei As Variant, I As Integer, J As Integer, Zellen As Variant, Titel As Variant
Pfad = "Y:\AusDateiAuslesen\Daten" ' Pfad der Daten-Dateien anpassen
'Spaltentitel anpassen bzw. ergänzen
Titel = Array("Namen", "Spezialist", "Berater")
'Zellen die ausgelesen werden sollen. Liste anpassen bzw. ergänzen
'Zellen in der Reihenfolge der Spaltentitel angeben
Zellen = Array("F8", "F26", "F28")
' Neue Arbeitsmappe öffen , alternativ hier eine leere Musterdatei öffnen
Workbooks.Add Template:="Arbeitsmappe"
Set wkbNeu = ActiveWorkbook
' Daten-Dateien suchen
Datei = Dir(Pfad & "\eingabe*.XLS") ' Suchstring für EXCEL-Dateien anpasssen
' Spaltentitel setzen, kann bei Musterdatei entfallen
For J = 0 To UBound(Titel)
wkbNeu.Sheets(1).Cells(1, J + 1) = Titel(J)
Next J
I = 2 'Startzeile für Daten in neuer Datei
Do Until Datei = ""
' Daten-Datei öffnen
Application.ScreenUpdating = False
Workbooks.Open Pfad & "\" & Datei
Set wksDataSheet = ActiveWorkbook.Sheets(1)
' Daten in neue Datei übertragen
For J = 0 To UBound(Zellen)
wkbNeu.Sheets(1).Cells(I, J + 1) = wksDataSheet.Range(Zellen(J))
Next J
' Daten-Datei wieder schließen
ActiveWorkbook.Close False
Datei = Dir
I = I + 1
Application.ScreenUpdating = True
Loop
wkbNeu.Activate
' Neue Arbeitsmappe speichern
Application.Dialogs(xlDialogSaveAs).Show
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zellen aus verschiedenen dateien auslesen
16.06.2008 19:18:00
fcs
Hallo raphi,
der Code kommt mir irgendwie bekannt vor. Schön dass du ihn gefunden hast und gebrauchenkannst.
Passe die folgende Zeile an:

Set wksDataSheet = ActiveWorkbook.Sheets(1)
ändern in
Set wksDataSheet = ActiveWorkbook.Sheets("verschiedeneinfos")


Es muss nur sichergestellt sein, dass in jeder Datei auch ein Blatt mit diesem Namen ist, sonst kommt es zu einem Fehler mit Makro-Abbruch. ggf. muss noch eine kleine Feherbehandlung eingebaut werden.
Nachfolgend die Prozedur mit Fehlerbehandlung.
Gruß
Franz


Sub DatenEinlesen()
' Daten aus mehreren Dateien in eine neue Datei einlesen
Dim wkbNeu As Workbook, wksDataSheet As Worksheet, Pfad As String
Dim Datei As Variant, I As Integer, J As Integer, Zellen As Variant, Titel As Variant
Dim intFehler As Integer
On Error GoTo Fehler
Pfad = "Y:\AusDateiAuslesen\Daten" ' Pfad der Daten-Dateien anpassen
'Spaltentitel anpassen bzw. ergänzen
Titel = Array("Namen", "Spezialist", "Berater")
'Zellen die ausgelesen werden sollen. Liste anpassen bzw. ergänzen
'Zellen in der Reihenfolge der Spaltentitel angeben
Zellen = Array("F8", "F26", "F28")
' Neue Arbeitsmappe öffen , alternativ hier eine leere Musterdatei öffnen
Workbooks.Add Template:="Arbeitsmappe"
Set wkbNeu = ActiveWorkbook
' Daten-Dateien suchen
Datei = Dir(Pfad & "\eingabe*.XLS") ' Suchstring für EXCEL-Dateien anpasssen
' Spaltentitel setzen, kann bei Musterdatei entfallen
For J = 0 To UBound(Titel)
wkbNeu.Sheets(1).Cells(1, J + 1) = Titel(J)
Next J
I = 2 'Startzeile für Daten in neuer Datei
Do Until Datei = ""
' Daten-Datei öffnen
Application.ScreenUpdating = False
Workbooks.Open Pfad & "\" & Datei
intFehler = 1
Set wksDataSheet = ActiveWorkbook.Sheets("verschiedeneinfos")
intFehler = 0
' Daten in neue Datei übertragen
For J = 0 To UBound(Zellen)
wkbNeu.Sheets(1).Cells(I, J + 1) = wksDataSheet.Range(Zellen(J))
Next J
Weiter01:
' Daten-Datei wieder schließen
ActiveWorkbook.Close False
Datei = Dir
I = I + 1
Application.ScreenUpdating = True
Loop
wkbNeu.Activate
' Neue Arbeitsmappe speichern
Application.Dialogs(xlDialogSaveAs).Show
Fehler:
If Error  0 Then
Select Case intFehler
Case 1 'Fehler beim setzen des auszulesenden Blatts
MsgBox "in Datei """ & Datei & """ fehlt das Blatt ""verschiedeneinfos""!"
Resume Weiter01
Case Else
MsgBox "Fehler-Nr. " & Err.Number & " ist aufgetreten!" & vbLf & Err.Description
End Select
End If
End Sub


Anzeige
AW: zellen aus verschiedenen dateien auslesen
17.06.2008 15:29:00
Raphael
Besten Dank für die Tolle Hilfestellung... kleien Zusatzfrage, wie kann ich auch die Unterordner von
(Pfad = "Y:\AusDateiAuslesen\Daten") mit einbeziehen?
Gruss Raphi

Crossposting
17.06.2008 18:40:00
Reinhard
Hallo Franz,
auch mir kam der Code bekannt vor, diese Anfrage wurde auch in einem anderen Forum heute mittag gestellt von Raphael und ich habe sie ähnlich wie du beantwortet. da wußte ich aber noch nichts von deiner Antwort :-(
Raphaels Zusatzanfrage mit einem Codebeipiel für eine Filesearchroutine mit Searchsubfolder habe ich andernorts auch schon beantwortet.
Nur mal so als Info für dich :-)
Gruß
Reinhard
Anzeige

299 Forumthreads zu ähnlichen Themen


Hallo,
ich suche eine sicherlich einfache Möglichkeit Summen in einer bestimmten Zeile bilden zu lassen. Das Problem ist das die Bereiche unterschiedlich groß sind.
Zur besseren Erläuterung habe ich eine Bsp-Datei angehängt.
Vielen Dank!
MfG Tom
Die Datei https://www.herber....
Anzeige

Hallo Zusammen
Ich möchte gern nur die Werte in sichtbaren Zellen addieren. Mit der Nettosummenformel geht das aber nicht, weil bei meiner Problemstellung es kein zusammenhängender Bereich ist, sondern die Werte in Zellen der Spalten A, C, E, G... stehen.
Kann dieser VBA-Code evtl. an...

Hi,
der folgende Code soll in der Spalte Q das Datum umformatieren. Nun habe ich aber auch in der Spalte Q auch leere Zellen drin und der Code schreibt dann in die leeren Zellen immer 01.01.1900 rein, obwohl sie eigentlich leer bleiben sollen.
Wie kann man den Code ändern, dass leere Ze...
Anzeige

Mahlzeit allerseits,
ich möchte folgendes Addieren.
Beginnend In V6 und dann jede siebte Zelle in Spalte V.
V6+V13+V20 usw. bis zum Ende des Tabellenblattes, es kommt
aber zwischendurch vor, das sich Text bzw. Symbole in den
Zellen dazwischen befinden.
Wie kann ich am be...

Hallo zusammen,
ich möchte gern ein Inhaltsverzeichnis aus bestimmten Zeilen erstellen.
Bis jetzt habe ich diese Funktion nur für mehrere Sheets gefunden, gibt es das auch
für bestimmte zeilen die man zb entsprechend formatiert hat?
Vielen Dank!

Hallo zusammen,
ich möchte gern ein Inhaltsverzeichnis aus bestimmten Zeilen erstellen.
Bis jetzt habe ich diese Funktion nur für mehrere Sheets gefunden, gibt es das auch
für bestimmte zeilen die man zb entsprechend formatiert hat?
Vielen Dank!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige