Frage von Loliman12, 498

Excel komplette Zeile x mal kopieren und untereinander einfügen, aber wie?

Hallo, ich möchten, wenn z.B in Zelle D4 eins steht das die Zeile also A4-D4 x mal kopiert werden und dann untereinander eingefügt werden.Ich habe das mit einer Formel versucht, habe aber keine Lösung gefunden. Ich hoffe jemand kann mir helfen.

P.S(Copy und Paste geht nicht, da es sehr viele Zeilen gibt zum Kopieren)

 Danke im voraus.

Expertenantwort
von Ninombre, Community-Experte für Excel, 468

Für Dein Vorhaben brauchst Du auf jeden Fall ein Makro, mit Formeln kannst Du das nicht erreichen.
Es sollen also verschiedene Zeilen kopiert und ans Ende angehängt werden. Die Länge ist anscheinend unterschiedlich, also bis zu welcher Spalte kopiert wird. Die Anzahl der Kopien soll (wenn ich es richtig verstehe) auch vorgegeben werden über einen Wert. Prinzipiell geht das schon, aber:

- Kann man einfach bei Zeile 1 anfangen und bis zur letzten Zeile gehen oder sind die Bereiche, die kopiert werden sollen, anders aufgeteilt?
- Wie genau erkennt das Makro die Markierung bis zu der kopiert werden soll?
- Ist die Markierung dann auch die Zahl, die festlegt wieviele Kopien erstellt werden sollen?

In Deinen Beispielen war das einfach eine Zahl, die mal in D mal in K steht. Dann dürften aber keine Zahlen in den anderen Spalten auftauchen oder es müsste noch anders gekennzeichnet werden.

Antwort
von PWolff, 427

Was genau meinst du jetzt? Wie soll es am Ende aussehen?

Eine Möglichkeit, mehrfach dieselben Werte zu haben, ist, folgende Formel in Zelle A5 einzutragen:

=A4

und diese nach rechts und nach unten zu "ziehen" (mit der Maus an dem kleinen Quadrat rechts unten am Markierungsrahmen)

Eine andere Möglichkeit geht eben doch über Copy & Paste, aber anders als gewöhnlich:

Zunächst nimmst du die Zellen A4 bis D4 in die Zwischenablage

Dann markierst du die Zellen A5 bis D250 (oder bis wohin du den Inhalt kopieren willst)

Dort fügst du den Inhalt der Zwischenablage ein (z. B. Strg+V)

Kommentar von Loliman12 ,

Es soll so aussehen,das wenn bei K2 z.b 1 eingetragen ist A2-K2 automatisch kopiert werden und dann eingefügt werden, von Hand geht das nicht weil es sehr viele Zeilen sind , ist das mit vba möglich?

Kommentar von PWolff ,

Sicher ist das mit VBA möglich.

Wohin sollen diese Zellen aber kopiert werden?

Kommentar von Loliman12 ,

An das Ende, also unter die letzte Zeile

Kommentar von PWolff ,

Wenn nach der letzten Zeile noch nie etwas eingetragen war, kann man die letzte Zeile ermitteln mit

letzteZeile = <Tabelle>.Cells.SpecialCells(xlLastCell).Row

Sonst muss man die Zeilen durchgehen und nachsehen, ob dort etwas eingetragen ist.

Um A2 bis K2 in die Zeile z zu kopieren, kannst du folgende Codeabschnitte nehmen:

    For s = 1 To 11 'Spalte A - K
<Tabelle>.Cells(z, s).Formula = <Tabelle>.Cells(2, s)
Next

(Formula überträgt ggf. auch einfache Werte)

Oder

    Range(Cells(2, 1), Cells(2, 11)).Select 'A2:K2
Selection.Copy
Range(Cells(z, 1), Cells(z, 11)).Select
ActiveSheet.Paste

(Wenn das Makro im Code zu einer bestimmten Tabelle steht, heißt diese Tabelle dort "Me")

Kommentar von Loliman12 ,

Danke für deine Antwort.Ich habe nochmal überlegt,

=wenn(K2 =2;10,A44 = A1 ;"") leider geht das so nicht.

Wenn K2 = 2 soll die jetzige Kachel den Wert 10 bekommen

und A44 den Wert von A1 annehmen, wie muss man das schreiben? 

Kommentar von PWolff ,

Was soll in A44, wenn K2<>2? Und was ist die jetzige Kachel?

Excel-Formeln können nur den Wert der Zelle verändern, in der sie stehen. Für anderes braucht man ein Makro.

In die Zelle, die 10 annehmen soll:

=WENN(K$2=2;10; <anderer Wert>)

In A44:

=WENN(K$2=2;A1; <anderer Wert>)

Kommentar von Loliman12 ,

Okay könntest du mir nochmal helfen, ich möchte gerne das  immer, wenn man irgendwo in K eine Zahl einträgt die komplette Zeile kopiert wird z.B wenn man eine 2 in K2 einträgt, das A2-K2 kopiert werden und 4 mal ganz unten eingefügt werden, könntest du mir dabei helfen? Wäre echt nett von dir.

Kommentar von PWolff ,

Sorry, das hab ich nicht ganz verstanden.

Antwort
von beglo1705, 395

Markiere den Text, den du kopieren willst mit der rechten Maustaste. Wähle kopieren, dann markierst du wieder die Zeilen, in die du was reinkopieren willst, drückst auf einfügen und dann sollte es funktionieren. Eine Formel dazu hab ich leider nicht.

Kommentar von Loliman12 ,

Danke, leider wird das nicht funktionieren, da es sehr viele Zeilen sind und es ja "automatisiert" werden soll. 

Keine passende Antwort gefunden?

Fragen Sie die Community