Ik heb onderstaande code gemaakt om formules te plaatsen in een cel en een 2e formule in een andere cel met een voorwaarde. tevens wil ik dan van een aantal omliggende cellen de opmaak (kleur) aanpassen. Ik ben aan onderstaande code gekomen (deze werkt), maar nu vraag ik mij af, of het ook korter en/of overzichtelijker kan (voornamelijk de cel opmaak)
Sub kolom_formule_kleur()
'Opmaak kolombreedte
Columns("A:A").Select
Selection.ColumnWidth = 27
Columns("B:B").Select
Selection.ColumnWidth = 13
Columns("E:E").Select
Selection.ColumnWidth = 70
Columns("F:F").Select
Selection.ColumnWidth = 12
Columns("H:H").Select
Selection.ColumnWidth = 6
Columns("G:G").Select
Selection.ColumnWidth = 12
Columns("J:J").Select
Selection.ColumnWidth = 26
Columns("K:K").Select
Selection.ColumnWidth = 6
Columns("L:L").Select
Selection.ColumnWidth = 8
Columns("M:M").Select
Selection.ColumnWidth = 12
Columns("N:N").Select
Selection.ColumnWidth = 6
Columns("O:O").Select
Selection.ColumnWidth = 18
Columns("P
").Select
Selection.ColumnWidth = 35
'Opmaak kolommen N en H naar getal zonder cijfer achter de komma
Columns("N:N").Select
Selection.NumberFormat = "0"
Columns("H:H").Select
Selection.NumberFormat = "0"
'
'
'
'Kolom N aanvullen met een formule
Dim lidrij As Integer
lidrij = 2
Dim mijnobject As Object
Set mijnobject = Range("n" & lidrij)
Range("m:m").Sort Key1:=Range("m2"), Order1:=xlAscending
KolomN:
Range("n" & lidrij).Select
If ActiveCell.Offset(, -1) = "" Then
lidrij = 2
GoTo KolomH
Else
ActiveCell.FormulaR1C1 = "=NOW()-RC[-1]"
lidrij = lidrij + 1
GoTo KolomN
End If
KolomH:
'Kolom H aanvullen met een formule
Range("h" & lidrij).Select
If ActiveCell.Offset(, 2) = "tekst 1" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "tekst 2" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "tekst 3" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "" Then
Exit Sub
End If
lidrij = lidrij + 1
GoTo KolomH
End Sub
Sub kolom_formule_kleur()
'Opmaak kolombreedte
Columns("A:A").Select
Selection.ColumnWidth = 27
Columns("B:B").Select
Selection.ColumnWidth = 13
Columns("E:E").Select
Selection.ColumnWidth = 70
Columns("F:F").Select
Selection.ColumnWidth = 12
Columns("H:H").Select
Selection.ColumnWidth = 6
Columns("G:G").Select
Selection.ColumnWidth = 12
Columns("J:J").Select
Selection.ColumnWidth = 26
Columns("K:K").Select
Selection.ColumnWidth = 6
Columns("L:L").Select
Selection.ColumnWidth = 8
Columns("M:M").Select
Selection.ColumnWidth = 12
Columns("N:N").Select
Selection.ColumnWidth = 6
Columns("O:O").Select
Selection.ColumnWidth = 18
Columns("P

Selection.ColumnWidth = 35
'Opmaak kolommen N en H naar getal zonder cijfer achter de komma
Columns("N:N").Select
Selection.NumberFormat = "0"
Columns("H:H").Select
Selection.NumberFormat = "0"
'
'
'
'Kolom N aanvullen met een formule
Dim lidrij As Integer
lidrij = 2
Dim mijnobject As Object
Set mijnobject = Range("n" & lidrij)
Range("m:m").Sort Key1:=Range("m2"), Order1:=xlAscending
KolomN:
Range("n" & lidrij).Select
If ActiveCell.Offset(, -1) = "" Then
lidrij = 2
GoTo KolomH
Else
ActiveCell.FormulaR1C1 = "=NOW()-RC[-1]"
lidrij = lidrij + 1
GoTo KolomN
End If
KolomH:
'Kolom H aanvullen met een formule
Range("h" & lidrij).Select
If ActiveCell.Offset(, 2) = "tekst 1" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "tekst 2" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(146, 208, 80)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "tekst 3" Then
ActiveCell.FormulaR1C1 = "=NOW()-RC[1]"
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 2).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 1).Select
ActiveCell.Interior.Color = RGB(255, 192, 0)
ActiveCell.Offset(0, 1).Select
lidrij = lidrij + 1
GoTo KolomH
ElseIf ActiveCell.Offset(, 2) = "" Then
Exit Sub
End If
lidrij = lidrij + 1
GoTo KolomH
End Sub