Microsoft Excel

Herbers Excel/VBA-Archiv

Zeilen in einem Blatt zusammenfügen

Betrifft: Zeilen in einem Blatt zusammenfügen von: Annie
Geschrieben am: 30.09.2014 09:54:47

Hallo,

ich kenne mich in Excel nur mit den Standard-Formeln aus und weiß zu VBA nur wie ich einen vorgegebenen Code eingebe. Daher würde ich mich über Hilfe zu folgendem Problem freuen:

Ich möchte gern 159 hintereinanderliegende, gleich aufgebaute Tabellenblätter in 3 neue Blätter zusammenfügen -- und zwar so dass immer Zeile 3 in Blatt 1 landet, Zeile 4 in Blatt 2, und Zeile 5 in Blatt 3.
Die 3 neuen Blätter hätten dann jeweils 159 Zeilen – entsprechend der zuvor zusammengefügten Tabellenblätter.

Wie bekomme ich das hin, gibt es z.B. einen VBA-Code?

Danke schon einmal im Voraus!

  

Betrifft: AW: Zeilen in einem Blatt zusammenfügen von: Rudi Maintaire
Geschrieben am: 30.09.2014 10:35:42

Hallo,
1. füge 3 Blätter am Ende ein
2. füge einen Namen ein. Name: x; Bezieht sich auf: =ARBEITSMAPPE.ZUORDNEN(1+0*JETZT())
3. in das erste neue Blatt
=INDIREKT("'" &INDEX(x;ZEILE($A1)) &"'!"&ADRESSE(4;SPALTE(A$1)))
und nach rechts und unten kopieren soweit nötig.
2. und 3. Blatt wie 1. Blatt.

Wenn du die Blätter am Anfang einfügst, Zeile($A1) durch Zeile($A4) ersetzen.

Gruß
Rudi


  

Betrifft: AW: Zeilen in einem Blatt zusammenfügen von: Annie
Geschrieben am: 30.09.2014 10:46:19

Lieber Rudi,
Vielen Dank für die Anleitung. Ich bin mir nicht ganz sicher, was ich unter Punkt 2 machen soll (2. füge einen Namen ein. Name: x; Bezieht sich auf: =ARBEITSMAPPE.ZUORDNEN(1+0*JETZT()) . Wo füge ich den Namen und die Formel ein? Danke!


  

Betrifft: Namen einfügen von: Rudi Maintaire
Geschrieben am: 30.09.2014 10:51:58

Hallo,
drücke STRG+F3 und klicke auf Neu.

Gruß
Rudi


  

Betrifft: AW: Namen einfügen von: Annie
Geschrieben am: 30.09.2014 11:20:52

Vielen Dank, Rudi!


  

Betrifft: AW: Zeilen in einem Blatt zusammenfügen von: Martin
Geschrieben am: 30.09.2014 10:38:15

Hallo Anni,

so sollte es gehen:

Sub Makro1()

    Dim i As Integer, j As Integer
    Sheets.Add After:=Sheets(Sheets.Count), Count:=3
    
    For i = 1 To 3
        Sheets(Sheets.Count - 2).Rows(i).Value = Sheets(i).Rows(3).Value
        Sheets(Sheets.Count - 1).Rows(i).Value = Sheets(i).Rows(4).Value
        Sheets(Sheets.Count).Rows(i).Value = Sheets(i).Rows(5).Value
    Next i
    
End Sub
Viele Grüße

Martin


  

Betrifft: ...aber mit 159 Blättern von: Martin
Geschrieben am: 30.09.2014 10:40:51

Hallo Anni,

ich hatte mein Makro mit nur 3 Blättern getestet, aber es sollen ja 159 Blätter durchlaufen werden. Also bitte nimm dieses Makro:

Sub Makro1()

    Dim i As Integer
    Sheets.Add After:=Sheets(Sheets.Count), Count:=3
    
    For i = 1 To 159
        Sheets(Sheets.Count - 2).Rows(i).Value = Sheets(i).Rows(3).Value
        Sheets(Sheets.Count - 1).Rows(i).Value = Sheets(i).Rows(4).Value
        Sheets(Sheets.Count).Rows(i).Value = Sheets(i).Rows(5).Value
    Next i
    
End Sub
Viele Grüße

Martin


  

Betrifft: AW: ...aber mit 159 Blättern von: Annie
Geschrieben am: 30.09.2014 11:12:29

Lieber Martin,

es ist richtig dass ich einfach unter Entwicklertools/visual basic in der linken Spalte auf "DieseArbeitsmappe" und dann "Code anzeigen" klicke, in das sich öffnende Fenster den Code einfüge und auf "Makro ausführen" klicke, oder?

Auf den ersten Blick kommen so jedenfalls neue Tabellenblätter mit den richtigen Werten! Grandios!

1000 Dank! Liebe Grüße,
Anni


 

Beiträge aus den Excel-Beispielen zum Thema "Zeilen in einem Blatt zusammenfügen"