VBA hulp gevraagd
Ik heb een formule in vba gemaakt:
Wie weet wat ik moet toevoegen, indien ik wil dat wanneer een hele rij rood is, dat de waarde in rij "V" na aktivering van de formule "o" wordt? Dit omdat als ik de kleur blauw of groen in het totaal overschrijf met rood, dat de waarde nog blijft staan in veld "V" en dat moet dan juist na aktivering van de formule weer "o" worden.
Sub Macro1()
'
'
' Sneltoets: CTRL+SHIFT+A
'
Dim Rij As Integer
' Start loop
For Rij = 2 To 65
Groen = 0
Rood = 0
Blauw = 0
Range("B" & Rij).Select
If ActiveCell.FormulaR1C1 <> "" Then
Range("C" & Rij).Select
Waardering ("0,25")
Range("D" & Rij).Select
Waardering ("0,50")
Range("E" & Rij).Select
Waardering ("0,25")
Range("F" & Rij).Select
Waardering (0.25)
Range("G" & Rij).Select
Waardering (1)
Range("H" & Rij).Select
Waardering (1)
Range("I" & Rij).Select
Waardering ("0,50")
Range("J" & Rij).Select
Waardering ("0,25")
Range("K" & Rij).Select
Waardering ("0,25")
Range("L" & Rij).Select
Waardering ("0,75")
Range("M" & Rij).Select
Waardering ("0,25")
Range("N" & Rij).Select
Waardering ("0,50")
Range("O" & Rij).Select
Waardering ("0,75")
Range("P" & Rij).Select
Waardering ("0,25")
Range("Q" & Rij).Select
Waardering ("0,50")
Range("R" & Rij).Select
Waardering ("1,50")
Range("S" & Rij).Select
Waardering ("0,25")
Range("T" & Rij).Select
Waardering ("0,25")
Range("U" & Rij).Select
Waardering ("0,50")
Range("V" & Rij).Select
If Groen + Blauw > 0 Then
ActiveCell.FormulaR1C1 = Groen + Blauw
End If
Range("W" & Rij).Select
If Groen > 0 Then
If Groen <= 5 Then
ActiveCell.FormulaR1C1 = Groen - 0.25
Else
ActiveCell.FormulaR1C1 = Groen - 0.5
End If
Else
ActiveCell.FormulaR1C1 = Groen
End If
End If
Next Rij
Range("A1").Select
End Sub
Public Sub Waardering(Verdeelsleutel As Double)
If Selection.Interior.ColorIndex = 4 Then Groen = Groen + 1 * Verdeelsleutel
If Selection.Interior.ColorIndex = 3 Then Rood = Rood + 1 * Verdeelsleutel
If Selection.Interior.ColorIndex = 8 Then Blauw = Blauw + 1 * Verdeelsleutel
End Sub
Ik heb een formule in vba gemaakt:
Wie weet wat ik moet toevoegen, indien ik wil dat wanneer een hele rij rood is, dat de waarde in rij "V" na aktivering van de formule "o" wordt? Dit omdat als ik de kleur blauw of groen in het totaal overschrijf met rood, dat de waarde nog blijft staan in veld "V" en dat moet dan juist na aktivering van de formule weer "o" worden.
Sub Macro1()
'
'
' Sneltoets: CTRL+SHIFT+A
'
Dim Rij As Integer
' Start loop
For Rij = 2 To 65
Groen = 0
Rood = 0
Blauw = 0
Range("B" & Rij).Select
If ActiveCell.FormulaR1C1 <> "" Then
Range("C" & Rij).Select
Waardering ("0,25")
Range("D" & Rij).Select
Waardering ("0,50")
Range("E" & Rij).Select
Waardering ("0,25")
Range("F" & Rij).Select
Waardering (0.25)
Range("G" & Rij).Select
Waardering (1)
Range("H" & Rij).Select
Waardering (1)
Range("I" & Rij).Select
Waardering ("0,50")
Range("J" & Rij).Select
Waardering ("0,25")
Range("K" & Rij).Select
Waardering ("0,25")
Range("L" & Rij).Select
Waardering ("0,75")
Range("M" & Rij).Select
Waardering ("0,25")
Range("N" & Rij).Select
Waardering ("0,50")
Range("O" & Rij).Select
Waardering ("0,75")
Range("P" & Rij).Select
Waardering ("0,25")
Range("Q" & Rij).Select
Waardering ("0,50")
Range("R" & Rij).Select
Waardering ("1,50")
Range("S" & Rij).Select
Waardering ("0,25")
Range("T" & Rij).Select
Waardering ("0,25")
Range("U" & Rij).Select
Waardering ("0,50")
Range("V" & Rij).Select
If Groen + Blauw > 0 Then
ActiveCell.FormulaR1C1 = Groen + Blauw
End If
Range("W" & Rij).Select
If Groen > 0 Then
If Groen <= 5 Then
ActiveCell.FormulaR1C1 = Groen - 0.25
Else
ActiveCell.FormulaR1C1 = Groen - 0.5
End If
Else
ActiveCell.FormulaR1C1 = Groen
End If
End If
Next Rij
Range("A1").Select
End Sub
Public Sub Waardering(Verdeelsleutel As Double)
If Selection.Interior.ColorIndex = 4 Then Groen = Groen + 1 * Verdeelsleutel
If Selection.Interior.ColorIndex = 3 Then Rood = Rood + 1 * Verdeelsleutel
If Selection.Interior.ColorIndex = 8 Then Blauw = Blauw + 1 * Verdeelsleutel
End Sub
Laatst bewerkt: