Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

VBA Excel LZ in Spalte einf,wenn Werte ungleich

Betrifft: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 24.10.2014 12:58:41

Guten Tag, programmiere zum ersten mal ein Makro, und komme nicht mehr weiter.
Ich möchte in Spalte C die Werte vergleichen, und sobald der Wert ungleich ist,soll eine Leerzeile eingefügt werden.
Mit diesem Code klappt das super:

Sub Makro12()
'fügt Leerzeilen zwischen verschiedenen Lagerorten ein (Spalte C)

  Dim r As Long, mcol As String, i As Long

  r = Cells(Rows.Count, "C").End(xlUp).Row

  mcol = Cells(r, 3).Value

  For i = r To 2 Step -1
     If Cells(i, 3).Value <> mcol Then
       mcol = Cells(i, 3).Value
        Rows(i + 1).Insert
     End If
  Next i
End Sub
Das Problem: Ich möchte nicht dass er alle Werte vergleicht,sondern nur die Werte bis zur ersten leeren Zelle.
Einfach aufzeichnen geht nicht,da die Tabellenlänge variiert.
Wäre für Antworten sehr dankbar
Viele Grüße

  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: MCO
Geschrieben am: 24.10.2014 13:22:44

Hallo!
Wie wäre es damit?

  For i = r To 2 Step -1
     if isempty(Cells(i, 3)) then exit for
     If Cells(i, 3).Value <> mcol Then
       mcol = Cells(i, 3).Value
        Rows(i + 1).Insert
     End If
  Next i
End Sub
Gruß, MCO


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 24.10.2014 13:28:53

da passiert leider Garnichts :(
Gruß


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 27.10.2014 08:32:17

Leider fängt er erst ab der ersten leeren Zeile an :(
Ich benötige es umgekehrt.
Viele Grüße


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 24.10.2014 13:31:36

Wenn ich die beiden miteinander kombiniere, macht es mir AB der ersten leeren Zelle die Leerzeilen rein, möchte es gerne anders herum.
Viele Grüße


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 24.10.2014 13:33:42

sorry, falsche Info: es passiert das gleiche wie vorher.
Hat noch jemand Vorschläge?Bin am verzweifeln :(


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 24.10.2014 14:38:00

niemand?


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: MCO
Geschrieben am: 27.10.2014 07:10:31

Moin!

Mir ist leider das Wochende dazwischen gekommen :-)

Was stört dich denn an dieser Logik?
Vergleicht, fügt ein, steigt aus bei der ersten leeren Zelle.

Sub Makro12()
'fügt Leerzeilen zwischen verschiedenen Lagerorten ein (Spalte C)

  Dim r As Long, mcol As String, i As Long

  r = Cells(Rows.Count, "C").End(xlUp).Row
  mcol = Cells(r, 3).Value

  For i = r To 2 Step -1

     If IsEmpty(Cells(i, 3)) Then MsgBox "Ausstieg in Zeile " & i: Exit For
     Cells(i, 3).Interior.ColorIndex = 3
     If Cells(i, 3).Value <> mcol Then
        mcol = Cells(i, 3).Value
        Rows(i + 1).Insert
     End If
  Next i
End Sub
Gruß, MCO


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 27.10.2014 10:53:51

Eine Messagebox wäre auch eine Alternative, bei der ich eingeben kann bis zu welcher Zeile die Werte verglichen werden sollen.
Viele Grüße, Karin


  

Betrifft: AW: VBA Excel LZ in Spalte einf,wenn Werte ungleich von: braun
Geschrieben am: 27.10.2014 08:29:31

Es fängt leider erst ab der ersten leeren Zeile zu vergleichen an :(
Benötige es umgekehrt.
Viele Grüße


 

Beiträge aus den Excel-Beispielen zum Thema "VBA Excel LZ in Spalte einf,wenn Werte ungleich"