AW: in VBA Zeile mit for schleife durchsuchen
11.09.2018 09:06:34
aelli
Hallo Daniel,
danke für deine Hilfe. Ich habe meinen Code jetzt auch so hinbekommen das er schnell durchläuft. (Das Problem war, dass wenn kein weiteres Kästchen ausgefüllt war, wurde jedes explicit geleert. Das hat dann bei den 360 verbleibenden etwas gedauert).
Nun habe ich allerdings ein neues Problem. Das Programm soll auch in die andere Richtung suchen um so ein anderes Kästchen zu korrigieren. Mein Code ist bisher so:
'loescht das Datum in Beginn, falls die Zelle mit dem gleichen Datum im Kalender deaktiviert _
wird
If Cells(ActiveCell.Row, 8).Value = Cells(6, ActiveCell.Column).Value Then
Cells(ActiveCell.Row, 8).Value = vbNullString
Dim rngCell As Range
For Each rngCell In Range(ActiveCell, Cells(ActiveCell.Row, 377)) 'gehe von _
der markierten Zelle das restliche Jahr in dieser Zeile durch
If rngCell.Interior.ColorIndex xlColorIndexNone Then
Cells(ActiveCell.Row, 8).Value = Cells(6, rngCell.Column).Value
Exit For 'Wenn er den ersten Wert gefunden hat verlasse die Schleife
End If
Next
End If
'loescht das Datum in Ende, falls die Zelle mit dem gleichen Datum im Kalender _
deaktiviert wird
If Cells(ActiveCell.Row, 9).Value = Cells(6, ActiveCell.Column).Value Then
Cells(ActiveCell.Row, 9).Value = vbNullString
Dim rngCellTwo As Range
For Each rngCellTwo In Range(Cells(ActiveCell.Row, 12, ActiveCell)) 'gehe _
von der markierten Zelle das restliche Jahr in dieser Zeile durch
If rngCellTwo.Interior.ColorIndex xlColorIndexNone Then
Cells(ActiveCell.Row, 9).Value = Cells(6, rngCellTwo.Column).Value
Exit For 'Wenn er den ersten Wert gefunden hat verlasse die Schleife
End If
Next
End If
Der obere Teil mit dem Beginn funktioniert einwandfrei, jz soll das ganze eigentlich nurnoch gespiegelt werden.
Vielen Dank für Eure Hilfe schonmal.
Grus Aelli