Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
316to320
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
316to320
316to320
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilenbereiche kopieren

Zeilenbereiche kopieren
01.10.2003 12:10:17
Marco
hallo zusammen,
hab gerade beim ausführen eines Markos gemerkt das ich noch ein kleines Porblem habe. Wenn ich dieses Makro ausführe Importiert er mir von einer angefügten Tabelle bestimmte bereiche in Meine Haupttabelle.
Allerdings wenn ich es mermals ausführe macht er die Daten nicht untereinander wie er es sollte sondern überschreibt mir die bereits importierten Daten.
Das ist das Makro:


Sub CopyList_ProE()
Dim wksQ As Worksheet
Dim wksZ As Worksheet
Dim lngLQZeil As Long
Dim lngLZZeil As Long
Dim lngRecords As Long
Set wksZ = Worksheets("Liste")
Set wksQ = Worksheets(Worksheets.Count)
lngLZZeil = wksZ.Cells(wksZ.Rows.Count, 1).End(xlUp).Row + 3
With wksQ
lngLQZeil = .Cells(.Rows.Count, 1).End(xlUp).Row
If lngLQZeil = 2 Then
MsgBox "Keine neuen Daten"
Exit Sub
End If
With .Range(.Cells(1, 1), .Cells(1))
lngRecords = .Rows.Count
.Copy
wksZ.Range(wksZ.Cells(lngLZZeil, 1), wksZ.Cells(lngLZZeil + lngRecords - 1, 1)).PasteSpecial xlPasteValues
End With
With .Range(.Cells(2, 1), .Cells(lngLQZeil, 1))
lngRecords = .Rows.Count
.Copy
wksZ.Range(wksZ.Cells(lngLZZeil, 2), wksZ.Cells(lngLZZeil + lngRecords - 1, 2)).PasteSpecial xlPasteValues
End With
With .Range(.Cells(2, 3), .Cells(lngLQZeil, 3))
lngRecords = .Rows.Count
.Copy
wksZ.Range(wksZ.Cells(lngLZZeil, 3), wksZ.Cells(lngLZZeil + lngRecords - 1, 3)).PasteSpecial xlPasteValues
End With
With .Range(.Cells(2, 4), .Cells(lngLQZeil, 4))
lngRecords = .Rows.Count
.Copy
wksZ.Range(wksZ.Cells(lngLZZeil, 9), wksZ.Cells(lngLZZeil + lngRecords - 1, 9)).PasteSpecial xlPasteValues
End With
With .Range(.Cells(2, 5), .Cells(lngLQZeil, 5))
lngRecords = .Rows.Count
.Copy
wksZ.Range(wksZ.Cells(lngLZZeil, 4), wksZ.Cells(lngLZZeil + lngRecords - 1, 4)).PasteSpecial xlPasteValues
End With
Application.CutCopyMode = False
End With
End Sub


Vielen Dank für eure Hilfe

viele grüsse

Marco

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenbereiche kopieren
02.10.2003 04:43:09
Hans W. Herber
Hallo Marco,

Du schreibst in Deine Variable lngLZZeil die letzte genutzte Zelle in Spalte A. Da aber die Daten nur in die erste Zeile in Spalte A geschrieben werden, werden bei einem erneuten Aufruf die Folgedaten überschrieben. Also darfst Du nicht von A ausgehen, sondern von der Spalte, in die die meisten Zeilen übernommen werden.

gruss hans

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige