In Word habe ich ein Dokument mit mehreren Tabellen voller Daten. Versteckt in diesen Zellen (außer Sicht, aber die Daten sind dort) ist der Hex-Code der Farbe, die ich die Zellen schattieren möchte. Ich habe den Hexadezimalwert gewählt, nur weil er relativ kurz ist und ein einzigartiger Text ist, der nicht mit dem Rest des Textes in der Zelle verwechselt wird.Verwenden Sie Word VBA zum Ausmalen von Zellen in Tabellen basierend auf Zellenwert
Ich habe einige Code online gefunden, um zu ändern, aber ich kann nicht scheinen, damit es funktioniert. Es gibt keine Fehler, nichts passiert. Ich habe das Gefühl, dass das Problem darin besteht, die Tabellen nach dem Textwert zu durchsuchen, aber ich habe Stunden damit verbracht und ich denke, ich habe mich jetzt verwirrt!
Sub ColourIn()
Dim oTbl As Table
Dim oCel As Cell
Dim oRng As Range
Dim oClr As String
For Each oTbl In ActiveDocument.Tables
For Each oCel In oTbl.Range.Cells
Set oRng = oCel.Range
oRng.End = oRng.End - 1
If oRng = "CCFFCC" Then
oCel.Shading.BackgroundPatternColor = wdColorLightYellow
End If
If oRng = "FFFF99" Then
oCel.Shading.BackgroundPatternColor = wdColorPaleBlue
End If
Next
Next
End Sub
Vielen Dank!
Edit:
ich auch diesen Code wit das gleiche Ergebnis von nichts habe versucht passiert:
Sub EachCellText()
Dim oCell As Word.Cell
Dim strCellString As String
For Each oCell In ActiveDocument.Tables(1).Range.Cells
strCellString = Left(oCell.Range.Text, _
Len(oCell.Range.Text) - 1)
If strCellString = "CCFFFF" Then
oCell.Shading.BackgroundPatternColor = wdColorLightGreen
If strCellString = "CCFFCC" Then
oCell.Shading.BackgroundPatternColor = wdColorLightYellow
If strCellString = "FFFF99" Then
oCell.Shading.BackgroundPatternColor = wdColorPaleBlue
End If
End If
End If
Next
End Sub
Der Code selbst funktioniert, er hebt die Zelle hervor, in der sich der Hex-Code befindet Daten? – gizlmo
Hier ist ein Screenshot mit einer Erklärung: http://i.imgur.com/mxOBbNb.png Bewegt sich dieser Code durch alle Zellen im Dokument oder bleibt er irgendwo hängen? Das obere Ende des Dokuments mit Datum/Uhrzeit usw. ist ebenfalls ein Tisch, ich frage mich, ob es oben hängen bleibt? –