Zeilen duplizieren

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Karolus
********
Beiträge: 7524
Registriert: Mo, 02.01.2006 19:48

Re: Zeilen duplizieren

Beitrag von Karolus »

Hallo

http://xyproblem.info/

Eventuell möchtest du die eigentliche Aufgabenstellung beschreiben?!

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7524
Registriert: Mo, 02.01.2006 19:48

Re: Zeilen duplizieren

Beitrag von Karolus »

Bartex hat geschrieben:Gerne:
Es geht darum jede Zeile einer Tabelle 7x zu dublizieren
Ich fürchte du hast meinen Wink mit dem ZaunpfahlLink nicht so ganz verstanden.
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Zeilen duplizieren

Beitrag von F3K Total »

Moin,
Karolus hat völlig Recht, warum und wofür du sieben Kopien brauchst, sagst Du nicht, deshalb entgeht dir vermutlich eine viel einfachere Lösung.
Nun hatte ich das Makro schon fertig, darum lade ich es trotzdem hoch.
Markiere den zu vervielfältigenden Zellbereich (im Beispiel A2:C9), lass das Makro laufen, gibt die gewünschte Anzahl ein und OK

Code: Alles auswählen

Sub S_copy_seven_rows_Selection
    Dim nCopies as integer
    nCopies = inputbox("Wie oft soll jede Zeile dargestellt werden","Dateneingabe",7)
    oselection = Thiscomponent.currentselection
    oRangeAddress = oselection.RangeAddress
    aDataarray = oselection.DataArray
    nRows = uBound(aDataarray)
    nNewRows = (nRows + 1) * nCopies
    Redim Preserve aDataarray(nNewRows)
    nCounter = 0
    for i = nRows to 0 step -1
        aRowDataarray = aDataarray(i)        
        for k = 0 to nCopies - 1
            aDataarray(nNewRows-nCounter) = aRowDataarray
            nCounter = nCounter + 1
        next k
    next i
    oSheet = oselection.Spreadsheet
    oRange = oSheet.getcellrangebyposition(oRangeAddress.Startcolumn,oRangeAddress.StartRow,oRangeAddress.Endcolumn,oRangeAddress.StartRow + nNewRows)
    oRange.setDataArray(aDataarray)
End Sub
Anbei eine Beispieldatei
Dateianhänge
Copy_n_Rows.ods
(11.54 KiB) 113-mal heruntergeladen
Karolus
********
Beiträge: 7524
Registriert: Mo, 02.01.2006 19:48

Re: Zeilen duplizieren

Beitrag von Karolus »

Hallo

Notfalls geht das auch per

Code: Alles auswählen

=WIEDERHOLEN(A1&ZEICHEN(13);7)
nach rechts und nach unten kopieren und für jede Formelspalte einzeln: →Daten→Text in Spalten alles abwählen →→ok

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Bartex
Beiträge: 9
Registriert: Mi, 13.08.2014 01:32

Re: Zeilen duplizieren

Beitrag von Bartex »

F3K Total hat geschrieben: Markiere den zu vervielfältigenden Zellbereich (im Beispiel A2:C9), lass das Makro laufen, gibt die gewünschte Anzahl ein und OK
Achtung die erste Zeile wird 1x mehr dupliziert, sonst super
mikeleb
*******
Beiträge: 1412
Registriert: Fr, 09.12.2011 16:50

Re: Zeilen duplizieren

Beitrag von mikeleb »

Hallo,

das gewünschte Ergebnis kannst du mit ein bisschen Formelaufwand automatisch generieren lassen.
Anbei ein Beispiel.
Auf dem Tabellenblatt "Daten" gibst du die Grunddaten (Hauptgruppen, Länder, Mengen) ein und auf dem Tabellenblatt "Ergebnis" wird dir dann die Verkettung generiert (ggf. die Formel in Spalte A weiter nach unten ziehen)
Die kannst du dir dann per Markieren->Kopieren->Inhalte einfügen->Text an die Stelle kopieren wo du sie brauchst.
Dateianhänge
verketten.ods
(10.7 KiB) 87-mal heruntergeladen
Gruß,
mikeleb
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Zeilen duplizieren

Beitrag von F3K Total »

Bartex hat geschrieben:Achtung die erste Zeile wird 1x mehr dupliziert, sonst super
Tja, das habe ich wohl übersehen
Ändere

Code: Alles auswählen

nNewRows = (nRows + 1) * nCopies)
in

Code: Alles auswählen

nNewRows = ((nRows + 1) * nCopies) - 1
dann klappt's auch mit der ersten Zeile.
Gruß R
Bartex
Beiträge: 9
Registriert: Mi, 13.08.2014 01:32

Re: Zeilen duplizieren

Beitrag von Bartex »

mikeleb hat geschrieben:Hallo,
das gewünschte Ergebnis kannst du mit ein bisschen Formelaufwand automatisch generieren lassen.
Danke mikeleb, allerdings hat die Zeile mehrere Werte z.B. Artikelnummer, Status ect.
Mit der anderen Lösung klappts gut, den Rest mach ich von Hand.
Antworten