Freut mich.
Intersect() liefert als Rückgabewert, wenn es eine Schnittmenge gibt, also bei Erfolg, ein Objekt des Datentyps Excel.Range - bei Misserfolg, Nothing.
IF..Then prüft eine Bedingung.
zu Intersect) Ob ein (Range)Objekt definiert wurde, prüft man mit IF ... Is Nothing bzw IF Not... Is Nothing.
zu IF...Then) Diese kann TRUE (WAHR, bzw -1) oder FALSCH (FALSE bzw 0) zurückgeben.
Folgende Zeile:
If Intersect(Range("A13:A67"), Target) Then
Bedeutet sinngemäß:
IF Range.Value = -1
Du prüfst also die Defaulteigenschaft des Rangeobjektes auf TRUE bzw -1.
Hoffe das bringt Dich wenigstens etwas weiter.
Warum letztlich diese Prüfung bei 511 = TRUE ergibt, aber bei 511/2 FALSE ... ist eine gute Frage.
Vielleicht äussert sich noch jemand dazu, falls Nicht_Gäste nicht allzu träge dazu sein sollten. *ähem*
|