Application.evaluate Error 2015/ L.-Fehler 13
16.10.2013 14:56:18
Adleano
ich stehe gerade vor einem kleinen Problem mit einer Routine, die die bedingte Formatierungen (alle über Formeln hinterlegt) eines Tabellenblatts je Zelle ausliest, prüft und das Sperr-Kennzeichen der Zelle aufhebt, wenn die bedingte Formatierung zutrifft.
Hier der Code:
Geprüft wird gegen folgende Formel, die in der bedingten Formatierung der Zelle hinterlegt ist:
=UND($AH9=-1;$CC9="todo")
Hier der Code:
Sub ZellenEntsperren()
Dim i As Long, j As Long, counter As Long
Dim lngAnzSpalten As Long
Dim lngAnzZeilen As Long
Dim iColorA As Integer
Dim iFormula
Dim a 'zum Test
With Worksheets(1)
lngAnzSpalten = .Cells(1, Columns.Count).End(xlToLeft).Column
lngAnzZeilen = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 9 To lngAnzZeilen
For j = 1 To lngAnzSpalten
'.Cells(i, j).Select
With .Range(.Cells(i, j), .Cells(i, j))
For counter = 1 To .FormatConditions.Count
With .FormatConditions(1)
'Debug.Print .Formula1
'Wirft Fehler 2015
a = Application.Evaluate(.Formula1)
'Wirft Fehler 13 - Typen unverträglich
If Application.Evaluate(.Formula1) Then
iColorA = 0
iColorA = .Interior.ColorIndex
If iColorA xlNone Or iColorA 1 Then
Cells(i, j).Locked = False
End If
End If
End With
Next counter
End With
Next j
Next i
End With
MsgBox "Job erledigt", vbInformation
End Sub
Die Zeilen die Fehler werfen habe ich mit einem entsprechenden Kommentar versehen.Was mach ich hier falsch? Bei einfachen Prüfungen funktioniert es.
Vielen Dank schonmal.