Wenn Storniert in Spalte K dann M,N,O,P = 0 und T=Storniert

Hallo

bräuchte noch mal Hilfe. Meine Excel Formel lautet in T2:T350 =WENN(K2=„storniert“;„storniert.“;""). Diese Formel hätte ich gerne in VBA. und außerdem sollten dann die Spalten (der active Zeile) M,N,O,P den Wert Null erhalten.
Wie kann ich das bewerkstelligen. Nach langen erfolglosen Versuchen, wende ich mich deshalb an Euch.
Vielen Dank
Susanne

Hallo Susanne,

Sub Makro1()
AC = ActiveCell.Row
Range(Cells(AC, 13), Cells(AC, 16)) = 0
Range(Cells(2, 20), Cells(350, 20)).FormulaR1C1 = „=IF(RC[-9]=“„storniert“","„storniert.“","""")"
End Sub

Meist Du das so?

Freundliche Grüße
Thomas

Hallo Thomas

Sub Makro1()
AC = ActiveCell.Row
Range(Cells(AC, 13), Cells(AC, 16)) = 0

die Zeile funktioniert nicht , es werden keine Nullen in die Spalten eingetragen.

Range(Cells(2, 20), Cells(350, 20)).FormulaR1C1 =
„=IF(RC[-9]=“„storniert“","„storniert.“","""")"

Die Zeile funktioniert hervorragend.

End Sub

Meist Du das so?
Ja

Vielen Dank für den Code
Viele Grüße
Susanne

Hallo Susanne,

AC = ActiveCell.Row
Range(Cells(AC, 13), Cells(AC, 16)) = 0

die Zeile funktioniert nicht , es werden keine Nullen in die
Spalten eingetragen.

Die Nullen werden nur in die aktive Zeile eingetragen, wie gewünscht.
Wenn sie nicht angezeigt werden, liegt das vielleicht an Deinen Optionen ( Nullwerte anzeigen j/n ).

Range(Cells(2, 20), Cells(350, 20)).FormulaR1C1 =
„=IF(RC[-9]=“„storniert“","„storniert.“","""")"

Die Zeile funktioniert hervorragend.

Fein :smile:
Mich wundert nur, dass Du es nicht hinbekommen hast. Du hast doch im Tabellenkalk-Brett schon ganz Anderes gelöst - wenn ich mich richtig erinnere.
Das hier kommt doch fast fertig aus dem Makro-Rekorder.
Was nicht heißen soll, dass ich auch manchmal die einfachsten Sachen nicht raffe :-S

Schönes WE

Thomas

Hallo Thomas
leider funktioniert das mit den Nullen in der aktiven Zeile nicht. Wenn ich im Einzelschritt teste bringt er mir die Nullen, auch wenn in Spalte K kein storniert steht…Bei normaler Ausführung: Spalte K storniert geschrieben, wird das storniert in Spalte T eingetragen, aber eben nicht die Nullen in die Spalten M bis P. Irgendwie stehe ich auf dem Schlauch. Kannst Du mir nochmal helfen?
Danke
Viel Grüße
Susanne

Hallo Susanne,
mit Deiner ursprünglichen Frage
Meine Excel Formel lautet in T2:T350 =WENN(K2=„storniert“;„storniert.“;""). Diese Formel hätte ich gerne in VBA. und außerdem sollten dann die Spalten (der active Zeile) M,N,O,P den Wert Null erhalten.
stimmt das aber nicht mehr ganz überein. Du wolltest Nullen in der aktiven Zeile.
Ich könnte nun in allen Zellen der Spalten M, N, O, P Nullen erzeugen, aber das wird Dich wahrscheinlich auch nicht glücklich machen :wink:
Du möchtest wohl eher die vier Spalten mit Nullen gefüllt haben, wo in der K-Spalte „storniert“ steht. ( Ich sehe gerade, dass das im Titel steht … )
Dann kann ich das nur mit einer Schleife abfragen und eintragen.
Wenn man schon so weit ist, könnte man sich auch das Eintragen von Formeln in der T-Spalte sparen und da gleich Werte eintragen.
Das sähe dann so aus:

Sub Makro1()

For AR = 2 To 350

If Cells(AR, 11) = „storniert“ Then
Range(Cells(AR, 13), Cells(AR, 16)) = 0
Cells(AR, 20) = „storniert.“
End If
Next AR
End Sub

Schönes Wochenende

Thomas

1 Like

Hallo Thomas,
läuft jetzt alles wie es soll.
vielen Dank.
Schönes Wochenende

Gruß
Susanne