AW: Stopp, ich habe meinen Beitrag
Tino
Hallo,
hier mit zwei Varianten, einmal den Prozentwert aus Spalte B wenn in B 5 oder 6 steht.
Format der Zelle wird auf Standard gestellt.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Set Bereich = Intersect(Range("B2:B1000"), Target)
If Not Bereich Is Nothing Then
Application.EnableEvents = False
With Bereich
.Offset(0, 2).FormulaR1C1 = "=IF(AND(RC[-2]<>2,RC[-2]<>5),"""",RC[-2]*60%)"
.Offset(0, 2).NumberFormat = "General"
.Offset(0, 2).Value = .Offset(0, 2).Value
.Offset(0, 3).NumberFormat = "General"
.Offset(0, 3).FormulaR1C1 = "=IF(AND(RC[-3]<>2,RC[-3]<>5),"""",RC[-3]*40%)"
.Offset(0, 3).Value = .Offset(0, 3).Value
End With
Application.EnableEvents = True
End If
End Sub
Und hier wird 60% oder 40% in die Zellen geschrieben und das Format auf Prozent gestellt.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Set Bereich = Intersect(Range("B2:B1000"), Target)
If Not Bereich Is Nothing Then
Application.EnableEvents = False
With Bereich
.Offset(0, 2).FormulaR1C1 = "=IF(AND(RC[-2]<>2,RC[-2]<>5),"""",60%)"
.Offset(0, 2).NumberFormat = "0%"
.Offset(0, 2).Value = .Offset(0, 2).Value
.Offset(0, 3).NumberFormat = "0%"
.Offset(0, 3).FormulaR1C1 = "=IF(AND(RC[-3]<>2,RC[-3]<>5),"""",40%)"
.Offset(0, 3).Value = .Offset(0, 3).Value
End With
Application.EnableEvents = True
End If
End Sub
Gruß Tino
www.VBA-Excel.de