XL XP: Zeilen aus einer Datei in eine andere kopieren

20/02/2008 - 18:07 von Ingrid Kutsche | Report spam
Liebe Leute,

wieder einmal kann ich das, was ich hier finde, nicht für meine Zwecke
anpassen. Drum muss ich doch euch fragen:

Aus vielen verschiedenen Dateien sollen Zeilen in einer anderen
zusammengetragen werden.

Dafür möchte ich ein Makro,
das die Zeilen markiert, in denen der Eintrag in Spalte A nicht mit
"01" endet,
und diese dann in die Zieldatei übertràgt, ohne die bereits
vorhandenen Zeilen zu überschreiben.
Das Öffnen der Quelldateien müssen die Lehrlinge "von Hand" machen,
das es pro Tag jeweils eine Quelldatei gibt. Aber es wàre schön, wenn
das Makro auch das Öffnen der Zieldatei übernimmt.

Das ist sicher nicht schwer, aber ich kriegs heute einfach nicht
zusammen :-(.

Danke euch!

Ingrid
 

Lesen sie die antworten

#1 stefan onken
21/02/2008 - 13:27 | Warnen spam
On 20 Feb., 18:07, Ingrid Kutsche wrote:
Liebe Leute,

wieder einmal kann ich das, was ich hier finde, nicht für meine Zwecke
anpassen. Drum muss ich doch euch fragen:

Aus vielen verschiedenen Dateien sollen Zeilen in einer anderen
zusammengetragen werden.

Dafür möchte ich ein Makro,
das die Zeilen markiert, in denen der Eintrag in Spalte A nicht mit
"01" endet,
und diese dann in die Zieldatei übertràgt, ohne die bereits
vorhandenen Zeilen zu überschreiben.
Das Öffnen der Quelldateien müssen die Lehrlinge "von Hand" machen,
das es pro Tag jeweils eine Quelldatei gibt. Aber es wàre schön, wenn
das Makro auch das Öffnen der Zieldatei übernimmt.

Das ist sicher nicht schwer, aber ich kriegs heute einfach nicht
zusammen :-(.

Danke euch!

Ingrid



hallo Ingrid,
teste mal dieses Makro (in der Datei, in der die Daten gesammelt
werden sollen).

Sub sammeln()
Set shZiel = ThisWorkbook.ActiveSheet
lrZiel = ActiveSheet.Cells(Rows.Count, 1). _
End(xlUp).Row + 1
datei = Application.GetOpenFilename _
("Excel-Dateien (*.xls), *.xls")
If Not datei = False Then 'Abbrechen geklickt
Application.ScreenUpdating = False
Workbooks.Open datei
With Sheets("Tabelle1")
lrQuelle = _
.Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lrQuelle
If Right(.Cells(i, 1).Value, 2) <> "01" Then
.Cells(i, 1).EntireRow.Copy _
Destination:=shZiel.Cells(lrZiel, 1)
lrZiel = lrZiel + 1
End If
Next
End With
ActiveWorkbook.Close False
End If
Application.ScreenUpdating = True
End Sub

Gruß
stefan

Ähnliche fragen