If Not (datacol = 8 Or datacol = 9) Then 
	Der Teil zwischen If und Then muss immer ein Wahr oder Falsch (engl. True / False) als Endergebnis haben. Es geht hier also jedesmal um die Erfüllung einer Bedingung (und keine Abfrage!). 
	Or ist ein Operator - hier speziell ein logischer - und bildet aus zwei Ausdrücke ein (wiederum) logisches Resultat: 
	- 
		False Or False ergibt False
 
	- 
		True Or False, ergibt True
 
	- 
		False Or True, ergibt True
 
	- 
		True Or True, ergibt True
 
 
	Not ist ebenfalls ein (logischer Operator, welcher einen logischen Ausdruck negiert (True -> False, False -> True) 
	  
	Diese zwei Kenntnisse miteinander kombiniert ergibt die obige Zeile, welche wir nachfolgend nochmal stückchenweise betrachten. 
datacol = 8 Or datacol = 9 
	Wir Fragen ob die Spalte den Wert 8 oder 9 besitzt. Der obigen Übersicht zu entnehmen kommt hier jedesmal True (Wahr) heraus, sobald eines dieser zwei Bedinungen erfüllt ist. 
	  
Not (datacol = 8 Or datacol = 9) 
	Da wir weder in Spalte 8 noch in Spalte 9 etwas machen wollen, müssen wir das Ergebnis negieren (aus True -> False machen). 
	Wichtig ist hier zu erkennen, dass man den Ausdruck klammern muss. 
	  
	Logische Ausdrücke können unterschiedlich notiert sein und machen dennoch das gleiche. Möglich wäre also auch folgendes gewesen: 
If datacol <> 8 And datacol <> 9 Then 
	Du solltest dir diese Bedingung mal auf die gleiche Weise wie oben gezeigt stückchenweise durchdenken. 
	And: 
	- 
		False Or False ergibt False
 
	- 
		True Or False, ergibt False
 
	- 
		False Or True, ergibt False
 
	- 
		True Or True, ergibt True
 
 
	  
	PS: Das sind u.a. Programmiergrundlagen die in jedem Buch, Tutorial und sogar in der VBA-Referenz nachzulesen sind. 
     |