Microsoft Excel

Herbers Excel/VBA-Archiv

Jede 2te Zeile in eine Spalte kopieren

Betrifft: Jede 2te Zeile in eine Spalte kopieren von: Eddie
Geschrieben am: 20.08.2008 07:52:38

Guten Morgen @ all

Ich habe mal wieder ein kleines problem :-)

Ich würde gerne Daten, die alle in einer Spalte sind auteilen.... dazu soll entweder der 1,3,5,7.... oder 2,4,6,8 ... Wert immer in die danebenliegende Spalte kopiert werden

IST:

Hallo
Hello
Gut
Good
Liebe
Love

Soll

A B
Hallo Hello
Gut Good
Liebe Love

Ich würde mich tierisch freuen, wenn jemand ein kleines Makro vielleicht dazu hätte

gruß Eddie

  

Betrifft: AW: Jede 2te Zeile in eine Spalte kopieren von: Beverly
Geschrieben am: 20.08.2008 08:16:56

Hi Eddi,

Sub kopieren()
   Dim loZeile As Long
   For loZeile = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count) To 2 Step -2
      Cells(loZeile, 1).Copy Cells(loZeile - 1, 2)
      Rows(loZeile).Delete
   Next loZeile
End Sub




GrußformelBeverly's Excel - Inn


  

Betrifft: @ Beverly - Bitte erkläre mir doch noch eine Zeile von: Eddie
Geschrieben am: 20.08.2008 08:32:10

Danke Beverly

klappt Super, nur versuche ich gerade den code zu verstehen




For loZeile = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count) To 2 Step -2 '!!!!!!! Diesen Code verstehe ich nóch nicht so ganz
Cells(loZeile, 1).Copy Cells(loZeile - 1, 2) ' hier wird der wert eine Zeile höher und eine Spalte nach rechts hinkopert
Rows(loZeile).Delete ' dann wird diese Zeile die kopiert worden ist gelöscht
Next loZeile ' und nun gehe zur nächsten Zeile



Danke und gruß Eddie


  

Betrifft: AW: @ Beverly - Bitte erkläre mir doch noch eine Z von: Beverly
Geschrieben am: 20.08.2008 10:13:14

Hi Eddi,

die Zeile bedeutet: Schleife von der letzten belegten Zelle in Spalte A bis zu Zeile 2 durchlaufen und dabei jeweils nur jede 2. Zeile verwenden. "Step" bedeutet "Schritt" und das "-" heißt "rückwärts" zählen. Zeile. Beim Löschen von Zeilen ist das "rückwärts"-Durchlaufen die günstigste Möglichkeit, andernfalls müsste man bei jedem Durchlauf die Zeilennummer anpassen.


GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Jede 2te Zeile in eine Spalte kopieren von: Marc
Geschrieben am: 20.08.2008 08:22:25

So?

Sub Vokabeln()

lz = ActiveSheet.Cells(Rows.Count, "a").End(xlUp).Row

For i = 1 To lz Step 2
    a = Cells(i, 1)
    b = Cells(i + 1, 1)

    Cells(i, 3) = a
    Cells(i, 4) = b
Next i
End Sub




  

Betrifft: AW: Jede 2te Zeile in eine Spalte kopieren von: Eddie
Geschrieben am: 20.08.2008 09:24:34

@ Marc

Dein Ansatz ist zwar gut, aber leider müssen dann noch die ersten 2 Spalten gelöscht werden, und dann noch wieder jede Freie Zeile

gruß Eddie


 

Beiträge aus den Excel-Beispielen zum Thema "Jede 2te Zeile in eine Spalte kopieren"