Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1008to1012
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
Inhaltsverzeichnis

Range bis zu einer bstimmten Zeile kopieren

Range bis zu einer bstimmten Zeile kopieren
19.09.2008 20:57:12
Joachim
Hi,
ich habe eine Sub, um Daten eines Ranges von einem Tabellenblatt zu einem andren Tabellenblatt zu kopieren:

Sub Kopieren()
Dim intS As Integer
Sheets("Daten einlesen").Range("C2:H150").Copy
With Sheets("Übersicht")
intS = .Cells(4, Columns.Count).End(xlToLeft).Column
.Cells(5, intS).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
End Sub


So, nun meine Frage dazu: Der Range, den ich kopieren will, kann in der Anzahl der Zeilen so gross sein, dass er über das Zeilenformat (Seitenhöhe)unten hinaus geht. In dem Fall wird einfach auf eine zweite Seite weiter geschrieben. Ich habe als Range halt mal 150 angegeben, da meine Zeilen variiren können und mal 30 mal 120 sein können. (150 deckt immer alles ab, dann werden halt leere Zeilen mit kopieret)
Nun das Problem dazu: ich habe unten in meiner Seite eine kleine Grafik platziert, sowas wie eine Fusszeile, Wenn ich nun den oben stehenden Code ausfüre, dann bügelt mir der Code die Daten bis zum letzten Zeile runter, egal, ob da unten eine Grafik steht oder nicht.
Kann ich den Code irgend wie umprogrammieren, dass dieser nicht bis zur letzten Zeile einer Seite die daten einträgt, sondern vielleicht schon 5 Zeilen vorher, also kurz vor der Grafik (.jpg) aufhört , und dann auf der nächsten Seite (wenn noch daten da sind) weiter macht ?
Hoffe, habe mein Problem richtig erklären können.
Gruss
Joachim

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range bis zu einer bstimmten Zeile kopieren
19.09.2008 21:25:00
Gerd
Hallo Joachim,
da wirst noch etwas schrauben müssen.

Sub Kopieren_II()
Dim intS As Integer
Sheets("Daten einlesen").Range("C2:H100").Copy  'H100 ggf. anpassen!
With Sheets("Übersicht")
intS = .Cells(4, Columns.Count).End(xlToLeft).Column
.Cells(5, intS).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
Sheets("Daten einlesen").Range("C101:H150").Copy  'C101 ggf, anpassen!
With Sheets("ÜbersichtII") 'Name des zweiten Blattes ggf. anpassen!
.Cells(5, intS).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
End Sub


Gruß Gerd

Anzeige
AW: Range bis zu einer bstimmten Zeile kopieren
19.09.2008 22:07:00
Joachim
Hallo Gerd,
Danke für die schnelle Hilfe. Wenn ich das richtig interpretiere, dann brauche ich noch mal ein zweites Sheet namens "ÜBERSICHT II"
Kann man den Code nicht so schreiben, das der Rest des Ranges nicht auf ein zweites Tabellenblatt ("ÜBERSICHT II") kommt, sondern praktisch im ersten Tabellenblatt ("ÜBERSICHT") auf die zweite Seite (fortlaufend) kommt ?
Gruss
Joachim
AW: Range bis zu einer bstimmten Zeile kopieren
19.09.2008 23:01:00
Gerd
Hallo Joachim,
bin dann mal weg.

Sub Kopieren_III()
Dim intS As Integer
Sheets("Daten einlesen").Range("C2:H100").Copy  'H100 ggf. anpassen!
With Sheets("Übersicht")
intS = .Cells(4, Columns.Count).End(xlToLeft).Column
.Cells(5, intS).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
Sheets("Daten einlesen").Range("C101:H150").Copy  'C101 ggf, anpassen!
With Sheets("Übersicht")
.Cells(5, intS + 6).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
End Sub


Gruß Gerd

Anzeige
Komme erst heute Abend zum testen. melde mich
20.09.2008 13:15:00
Joachim
:-)

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige