Hallo,
ich bin gerade am tüfteln. Ich will die Spalte "A" durchsuchen ob sie "A6" oder "B23" enthält. Wenn jetzt zB. "A6" enthalten ist, selektiere diese zelle, dann gehe zur Spalte L der gleichen Zeile und überschreibe.
Ich habe versucht das kleine Problem so zu lösen:
Dim ZelleFuenf As Range
For Each ZelleFuenf In Range("A2:A" & Cells(Rows.Count, "A").End(xlUp).Row) ' Selectiert alle zellen von A1 bis A, solange zelle ungleich null
If ZelleFuenf <> "" Then
If InStr(ZelleFuenf, "B23") > 0 Then ' Wenn Spalte A, B23 enthält, geh in die letzte beschriebene Zeile und schreibe NA rein.
ZelleFuenf.Select
Selection.End(xlToRight).Select ' !!!!!!!!!!!!!!!!!!!!! DIESER AUSDRUCK funktioniert nicht richtig, ich muss immer in die Spalte L und dort überschreiben.
ActiveCell.FormulaR1C1 = "NA"
End If
If InStr(ZelleFuenf, "A6") > 0 Then
ZelleFuenf.Select
Selection.End(xlToRight).Select ' !!!!!!!!!!!!!!!!!!!!! DIESER AUSDRUCK funktioniert nicht richtig, ich muss immer in die Spalte L und dort überschreiben.
ActiveCell.FormulaR1C1 = "NA"
End If
End If
Next
Das funktioniert auch soweit. Das dumme ist nur, wenn in der Zeile , die "A6" oder "B23" enthält, ein Leerzelle vorhanden ist, schreibt das Makro nur in die Zelle vor der Leerzeile "NA" rein. Es muss jedoch immer die Zelle L(X) überschrieben werden. "X" steht hier für die zelle in der Spalte L, die sich in der gleichen Zeile befindet, wie die Zelle, die in Spalte A, "B6" enthält.
Klingt vielleicht etwas verwirrend... Einfach: Wenn eine Zelle der Spalte A ein bestimmtes Wort enthält, gehe in die Spalte L der gleichen Zeile und schreibe "NA" rein.
Hoffe es kann mir jemand helfen
Bastian
|