B
boxleitnerb
Gast
Excel-Makro zum Einfügen von Zeilen/Werten funktioniert nicht
Ich habe folgende Tabelle mit SLI-Bits für verschiedene Spiele (beispielhaft):

Ich will, damit ich die Liste nachher ordentlich weiterverarbeiten kann, unter jedem Spiel Zeilen für DX10 und DX9 Bits stehen haben. Also 3 Zeilen pro Spiel, dann Leerzeile und dann der nächste Eintrag.
Spiel 1 hat nur Bits für DX10, Spiel 2 nur für DX9, Spiel 3 für DX9 und DX10 und Spiel 4 hat gar keine Bits.
Folgendes Makro hab ich geschrieben:
Für Spiel 1-3 klappt das auch wunderbar. Es wird eine Zeile (Spiel 1 und 2) bzw. keine Zeile (Spiel 3) mit den Einträgen hinzugefügt. Bei Spiel 4 aber passiert etwas, was ich partout nicht verstehe:
Sind die Zellen in dem blau markieren Bereich nicht leer, funktioniert das Makro. Sind sie aber leer, klappt es nicht! Ich brauch nur irgendwas da einfügen, egal wo - ein einzelnes Zeichen reicht - und es klappt. Warum ist das so?
Ich habe folgende Tabelle mit SLI-Bits für verschiedene Spiele (beispielhaft):

Ich will, damit ich die Liste nachher ordentlich weiterverarbeiten kann, unter jedem Spiel Zeilen für DX10 und DX9 Bits stehen haben. Also 3 Zeilen pro Spiel, dann Leerzeile und dann der nächste Eintrag.
Spiel 1 hat nur Bits für DX10, Spiel 2 nur für DX9, Spiel 3 für DX9 und DX10 und Spiel 4 hat gar keine Bits.
Folgendes Makro hab ich geschrieben:
Code:
Public Sub InsertBlankRow_DX9_DX10()
Dim Last As Long
Dim Row As Long
Dim TextPosProf As Integer
Application.ScreenUpdating = False
Last = IIf(IsEmpty(Range("B65536")), Range("B65536").End(xlUp).Row + 1, 65536)
For Row = Last To 1 Step -1
TextPosProf = InStr(1, Cells(Row, 1), "Profile")
If TextPosProf = 1 Then
If (Cells(Row + 1, 1)) = "DX10" And (Cells(Row + 2, 1)) = "" Then
Rows(Row + 2).Select
Selection.Insert
Cells(Row + 2, 1).Value = "DX9"
Cells(Row + 2, 2).Value = "n/a"
End If
If (Cells(Row + 1, 1)) = "DX9" And (Cells(Row + 2, 1)) = "" Then
Rows(Row + 1).Select
Selection.Insert
Cells(Row + 1, 1).Value = "DX10"
Cells(Row + 1, 2).Value = "n/a"
End If
If (Cells(Row + 1, 1)) = "" Then
Rows(Row + 1).Select
Selection.Insert
Selection.Insert
Cells(Row + 1, 1).Value = "DX10"
Cells(Row + 1, 2).Value = "n/a"
Cells(Row + 2, 1).Value = "DX9"
Cells(Row + 2, 2).Value = "n/a"
End If
End If
Next
Application.ScreenUpdating = True
End Sub
Für Spiel 1-3 klappt das auch wunderbar. Es wird eine Zeile (Spiel 1 und 2) bzw. keine Zeile (Spiel 3) mit den Einträgen hinzugefügt. Bei Spiel 4 aber passiert etwas, was ich partout nicht verstehe:
Sind die Zellen in dem blau markieren Bereich nicht leer, funktioniert das Makro. Sind sie aber leer, klappt es nicht! Ich brauch nur irgendwas da einfügen, egal wo - ein einzelnes Zeichen reicht - und es klappt. Warum ist das so?
Zuletzt bearbeitet: