Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Gleiche Zellen erkennen - dann automatisch Leerzeile einfügen





Frage

Hallo, ich habe eine Liste, in der in Spalte "Material" Artikelnummern stehen. Manche nur einmal, manche mehrmals. Excel soll nun automatisch immer nach gleichen Artikel-nummern zwei oder drei Leerzeichen machen. Das Problem ist, dass es ewig viele verschiedene Artikelnummern gibt. Ich habe bisher folgendes Makro gebastelt: (...) For Material = Range("C65536").End(xlUp).Row To 1 Step -1 If Cells(Material, 3) = "1029001" Then Rows(Material - 1).Insert Shift:=xlDown Rows(Material - 1).Insert Shift:=xlDown End If End Sub Das funktioniert, allerdings natürlich nur für eine Artikelnummer. Wie kann ich Excel beibringen, dass es Artikelnummern vergleicht, und immer nach einem Block mit gleichen Artikelnummern eine Leerzeile macht?

Antwort 1 von fedjo

Hallo,
Zitat:
drei Leerzeichen machen

sind die Artikelnummern untereinander oder nebeneinander?

fedjo

Antwort 2 von Beverly

Hi,

du schreibst einmal, dass du mehrere Leerzeilen einfügen willst, dann aber dass es nur eine Leerzeile sein soll. Hier ein Code für eine Leerzeile

Sub leerzeile_einfuegen()
    Dim loLetzte As Long
    Dim inI As Integer
    Application.ScreenUpdating = False
    With Worksheets("Tabelle1")
        loLetzte = IIf(IsEmpty(.Cells(Rows.Count, 3)), .Cells(Rows.Count, 3).End(xlUp).Row, Rows.Count)
        inI = 1
        Do While IsEmpty(.Cells(inI, 3)) = False
            If .Cells(inI, 3).Value <> .Cells(inI + 1, 3) Then
                Rows(inI + 1 & ":" & inI + 1).Insert
                loLetzte = loLetzte + 1
                inI = inI + 1
            End If
            inI = inI + 1
        Loop
    End With
    Application.ScreenUpdating = True
End Sub


Bis später,
Karin

Antwort 3 von CBundy

Hallo,

sorry - war wohl ein bisschen schlecht ausgerückt. Ich wollte zwei Leerzeilen haben. Ich hab das Makro aber so umgestellt --- es funktioniert jetzt!

Allerbesten Danke für die superschnelle Hilfe! :))

Schöne Grüße,
Christian