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

Daten auslesen!

Daten auslesen!
21.06.2003 10:34:04
Andre
Guten Morgen, ich möchte aus Tabellenblättern einer Datei Daten in eine andere Datei mit VBA auslesen.

Die Quelldatei besteht u.a. aus 85 Tabellenblättern, benannt nach fortlaufender Nummerierung.
Auslesen muß ich jetzt die Zellen von A8 bis C90 und I8 bis J90 jedes Tabellenblattes, aber nur die, in denen Daten stehen!!

Die zweite Schwierigkeit ist, zu jeder ausgelesenen Zeile brauche ich die Zelle C2 des betreffenden Tabellenblattes aus dem diese Zeile stammt.

Folgender Code macht schon ansatzweise etwas in der Art, jedoch läuft er nicht dateiübergreifend und es ist keine Abfrage nach ausgefüllten Zellen vorhanden:

Sub Zusammenfassung()
Dim iBlatt As Byte

For iBlatt = 2 To Worksheets.Count
Worksheets(iBlatt).Range("A8:C90").Copy Worksheets(1).Range("A" & ((iBlatt - 1) * 83) - 82)
Worksheets(iBlatt).Range("I8:J90").Copy Worksheets(1).Range("D" & ((iBlatt - 1) * 83) - 82)
Worksheets(1).Range("F" & ((iBlatt - 1) * 83) - 82 & ":F" & (iBlatt - 1) * 83) = Worksheets(iBlatt).Name
Next iBlatt
End Sub

Weiß jemand Rat?
Gruß Andre

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Daten auslesen!
22.06.2003 13:07:46
Klaus Schubert

Hallo Andre,
mal sehen, ob ich es einigermaßen verstanden habe:

Ganz klar ist mir nicht, ob du einzelne Zellen darauf untersucht haben willst, ob sie Daten enthalten oder ganze Zeilen (bzw. Datensätze). Dieser Code ist auf jeden Fall so geschrieben, das er nur Zeilen kopiert, welche in Spalte A der jeweiligen Zeile einen Wert enthalten (die anderen Spalten werden momentan nicht getestet,um die Ablaufgeschwindigkeit nicht auszubremsen!).
Falls du das erste Blatt in deiner Mappe, welches zuvor die Daten aufgenommen hat, löschen solltest, so muß du die For - Next-Schleife anpassen von
For iBlatt = 2 To AktiveMappe.Worksheets.Count

nach

For iBlatt = 1 To AktiveMappe.Worksheets.Count

,um alle Blätter zu erfassen.
Die Daten werden in eine neue Mappe geschrieben, die dann abgespeichert werden kann.

Viel Glück !

Gruß Klaus

Anzeige
Re: Daten auslesen!
23.06.2003 12:14:27
Andre

Hi Klaus, danke für deine Antwort. Der Code ist schon fast optimal, doch leider hat sich inzwischen eine weitere Schwierigkeit ergeben:
Ich hab jetzt zwei Quelldateien, die in einer Zieldatei kombiniert werden sollen!

Der Code kopiert die Daten der Arbeitsmappe in der der Code steht in eine neue. Um nicht jedes Mal beide Dateien zu öffnen und dann aufwendig in eine Datei zu kopieren, würde ich gerne den Code in die Zieldatei schreiben und so die Daten "ziehen" lassen.

Ich hoffe mein Anliegen wird deutlich.
Gruß Andre

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige