Select Case wird nicht durch geführt
13.06.2018 16:33:47
Guido
habe mich entschlossen eine komplexere if-then-Prüfung mit Select-Case zu ersetzen. und verzweifle an folgendem Code und bitte Euch um Hilfe:
Private Sub selectFertigkeit()
Sheets("Artefaktfertigkeiten").Activate
For i = 1 To UBound(arrFert)
If arrFert(i, 2) "Prüfung" Then
ActiveWindow.ScrollRow = i + 2
'ist fertigkeit eine voraussetzung?
Debug.Print arrFert(i, 1)
Debug.Print IsEmpty(arrFert(i, 10))
Debug.Print Columns(10).Find(arrFert(i, 1), LookIn:=xlValues, LookAt:=xlWhole) Is Nothing
Select Case arrFert(i, 1)
'1. Fertigkeit hat keine Voraussetzung und ist keine Voraussetzung -> listen
Case IsEmpty(arrFert(i, 10)) And _
Columns(10).Find(arrFert(i, 1), LookIn:=xlValues, LookAt:=xlWhole) Is Nothing ' lt. _
Debug: Wahr
With Me.lbxFert
.AddItem arrFert(i, 1) 'Fertigkeit Name
.List(.ListCount - 1, 1) = arrFert(i, 2) 'Fertigkeit Bereich
.List(.ListCount - 1, 2) = arrFert(i, 3) 'Fertigkeit Kosten
End With
'2. Fertigkeit hat Voraussetzung, Vorausetzung muss gebunden sein -> listen
'3. Fertigkeit ist Voraussetzung, hat selber keine Voraussezung und nicht gebunden -> _
listen
End Select
End If
Next i
End Sub
Die 2. Bedingung ist lt. debug.print = wahr, demnach müsste der Case ausgeführt werden, jedoch überspringt er die nachfolgende with-end-Anweisung.Kann wer den Fehler finden?
Danke Euch
Guido