ich die Funktion unten geschrieben habe, zu testen, ob eine Zelle bedingte Formatierung hat auf der Basis der Zellfüllung aktiviert.VBA-Funktion zu testen, ob Zelle bedingt in Excel formatiert ist
Function cfTest(inputCell)
If inputCell.DisplayFormat.Interior.Color <> 16777215 Then
cfTest = True
Else
cfTest = False
End If
End Function
Es funktioniert jedoch nicht. Wenn man das sagt, macht diese Methode.
Sub myCFtest()
Dim R As Integer
R = 2
Do
If Range("I" & R).DisplayFormat.Interior.Color <> 16777215 Then
Range("K" & R).Value = True
Else
Range("K" & R).Value = False
End If
R = R + 1
Loop Until R = 20
End Sub
Kann mir jemand erklären, warum die Funktion nicht funktioniert?
Prost.
EDIT: Aktualisierte Funktion aber nicht für die bedingte Formatierung arbeiten
Function cfTest(inputCell)
If inputCell.Interior.ColorIndex <> -4142 Then
cfTest = True
Else
cfTest = False
End If
End Function
rufen Sie diese Funktion von Zelle wie folgt auf: '= cfTest (A1)'? Wenn ja, funktioniert 'DisplayFormat' nicht in der UDF-Funktion, wenn es aus dem Arbeitsblatt aufgerufen wird. Siehe _Remarks_ in diesem Link für Details: http://msdn.microsoft.com/en-us/library/office/ff838814(v=office.15).aspx –
Das ist genau das, was ich versuchte zu tun - nennen Sie es von der Arbeitsblatt. Danke für den Link. Leider, wenn ich das DisplayFormat entferne, funktioniert es, aber nicht auf bedingt formatierten Zellen. Irgendwelche Tipps? Will den Beitrag bearbeiten die aktualisierte, aber immer noch nicht funktionierende Funktion .... – Chris
Überprüfen Sie dies [http://www.cpearson.com/excel/CFColors.htm](http://www.cpearson.com/excel/CFColors. htm) – Nybbe