- Mitglied seit
- 30.07.2000
- Beiträge
- 4.626
- Reaktionen
- 71
Servus,
ich bin leider ein totaler VBA-Newb und brauche deswegen Hilfe! Ich habe mir schon diversen Code aus Google-Ergebnissen zusammengeklaubt, komme aber nicht mehr weiter.
Was ich will, ist schnell erklärt: In der vierten Tabelle des Dokuments sollen die Spalten (3,5,7,...17,19 - jeweils ab Zeile 2) durchsucht werden. In den Zellen stehen Zahlen. Je nachdem in welchem Größenbereich die Zahl liegt, soll der Zellenhintergrund verschieden eingefärbt werden. Spalte 3 und Spalte 5 haben allerdings etwas andere Einf
Ich hab mir für eine einzelne Spalte Folgendes überlegt, das aber schonmal nicht läuft...
In Excel wäre das natürlich über die bedingte Formatierung gar kein Problem auch ohne VBA, aber es wäre schon sehr sehr fein, wenn ich es in Word hätte.
Kann mir jemand helfen?
ich bin leider ein totaler VBA-Newb und brauche deswegen Hilfe! Ich habe mir schon diversen Code aus Google-Ergebnissen zusammengeklaubt, komme aber nicht mehr weiter.
Was ich will, ist schnell erklärt: In der vierten Tabelle des Dokuments sollen die Spalten (3,5,7,...17,19 - jeweils ab Zeile 2) durchsucht werden. In den Zellen stehen Zahlen. Je nachdem in welchem Größenbereich die Zahl liegt, soll der Zellenhintergrund verschieden eingefärbt werden. Spalte 3 und Spalte 5 haben allerdings etwas andere Einf
Ich hab mir für eine einzelne Spalte Folgendes überlegt, das aber schonmal nicht läuft...
In Excel wäre das natürlich über die bedingte Formatierung gar kein Problem auch ohne VBA, aber es wäre schon sehr sehr fein, wenn ich es in Word hätte.
Code:
' Prozentränge_Spalte3 Makro
'
'
'Z1-Z5: oberster Wert der Leistungskategorie
'F1-F5: Farbe für die Kategorie (Wird aus einer vordefinierten,
' nummerierten Farbtafel eingefügt. Jede Zahl steht für eine Farbe)
Dim tbl As Table
Dim col As Column
Dim ro As Row
Dim cel As Cell
Dim rng As Range
Dim i As Integer
Dim Z1, Z2, Z3, Z4, Z5, Z6 As Integer
Dim F1, F2, F3, F4, F5, F6 As String
Z1 = 5 'sehr schwach -> 0-5
F1 = 3 'rot
Z2 = 10 'schwach -> 6-10
F2 = 46 'orange
Z3 = 25 'unterdurchschnittlich -> 11-25
F3 = 44 'dunkelgelb
Z4 = 75 'durchschnittlich -> 26-75
F4 = 2 'weiß
Z5 = 95 'überdurchschnittlich -> 76-95
F5 = 43 ' gelbgrün
Z6 = 100 'ausgezeichnet -> 96-100
F6 = 4 'knallgrün
Set tbl = ActiveDocument.Tables(4) '******FEHLER!******
Set col = tbl.Columns(3)
For Each cel In col.Cells
Set rng = cel.Range
With rng
If ActiveCell.Value <= Z1 Then 'Falls die Zelle in Kategorie 1,...
ActiveCell.Interior.ColorIndex = F1 '...dann färbe die Zelle mit Farbe1...
ElseIf ActiveCell.Value > Z1 And ActiveCell.Value <= Z2 Then 'Falls Zelle stattdessen in Kat 2,...usw.
ActiveCell.Interior.ColorIndex = F2
ElseIf ActiveCell.Value > Z3 And ActiveCell.Value <= Z3 Then
ActiveCell.Interior.ColorIndex = F3
ElseIf ActiveCell.Value > Z4 And ActiveCell.Value <= Z4 Then
ActiveCell.Interior.ColorIndex = F4
ElseIf ActiveCell.Value > Z5 And ActiveCell.Value <= Z5 Then
ActiveCell.Interior.ColorIndex = F5
Else
ActiveCell.Interior.ColorIndex = F6
End If
End With
Next cel
End Sub
Kann mir jemand helfen?
Zuletzt bearbeitet: