Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

If und or - wie geht das?

If und or - wie geht das?
28.08.2007 13:53:00
Herbert
Hallo Forum
Hatte gestern schon mein kleines Erfolgserlebnis, jetzt brauche ich eine kleine Erweiterung.
Warum funktioniert die Kombi if und or nicht:

Sub los()
If Cells(1, ActiveCell.Column)  "Name" or Cells(1, ActiveCell.Column)  "Planung" Then
MsgBox "Fehler"
Exit Sub
Else
Workbooks.Add template:="Einplanung"
End Sub


Nur mit "Name" funktioniert´s. Aber wie schaffe ich es, beide Werte (Name und Planung) als Fehler abzufangen? Mit elseif geht´s auch nicht.
Gruß Herbert

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: If und or - wie geht das?
28.08.2007 13:55:58
Reptil
was sicherlich nicht schön ist, aber funktioniert, ist, eine doppelte if abfrage zu bauen...
if cells(.....) "name" then
if cells(.....) "Planung" then
MsgBox...
.
.
.

AW: If und or - wie geht das?
28.08.2007 14:03:00
Bertram
Hallo Herbert,
müßte meiner Logik nach AND heißen.
Gruß
Bertram

AW: If und or - wie geht das?
28.08.2007 14:07:00
Rudi
Hallo,
die Syntax ist total verkehrt.

Sub los()
If Cells(1, ActiveCell.Column)  "Name" OR Cells(1, ActiveCell.Column)  "Planung" Then
MsgBox "Fehler"
Else
Workbooks.Add template:="Einplanung"
end if
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: If und or - wie geht das?
28.08.2007 14:31:00
Herbert
Hallo zusammen
erstmal Danke für die schnellen Antworten
Der Ansatz von Rudi funzt nicht, das Makro steigt immer aus, auch wenn "Name" oder "Planung" in der Zeile 1 steht.
die "unschöne" Lösung von Reptil mit dem doppelten if läuft, hat aber den Nachteil, daß ich mein WorkbooksAdd zweimal (nach jedem end if ) setzen muß.
Vielleicht hat noch jemand ne Idee?
Gruß Herbert

AW: If und or - wie geht das?
28.08.2007 14:51:00
Harry
Hallo,
die Logik der Bedingung ist falsch, der Ausdruck

Cells(1, ActiveCell.Column)  "Name" or Cells(1, ActiveCell.Column)  "Planung"


ist immer wahr.
Wenn entweder Planung oder Name in der Zelle stehen sollen, müsstest du verwenden


If (Cells(1, ActiveCell.Column)  "Name") AND (Cells(1, ActiveCell.Column)  "Planung") Then


Gruß
Harry

Anzeige
Danke, das wars
28.08.2007 14:55:00
Herbert
Hallo Harry
Manchmal sieht man den Wald vor lauter Bäumen nicht. Vielen Dank
Gruß Herbert

AW: If und or - wie geht das?
28.08.2007 15:07:00
Renee
Hi Herbert,
Ich mache Dir folgenden Vorschlag um sicherer mit solchen IF's umzugehen:
Verwende immer Positive - Formulierungen (statt ungleich - gleich) und wenn diese nicht zutreffen, verneine das Ganze
Also in Deinem Fall:

Sub los()
If Not (Cells(1, ActiveCell.Column) = "Name" Or _
Cells(1, ActiveCell.Column) = "Planung") Then
MsgBox "Fehler"
Else
Workbooks.Add template:="Einplanung"
End If
End Sub
'...oder...
Sub los()
If Cells(1, ActiveCell.Column) = "Name" Or _
Cells(1, ActiveCell.Column) = "Planung" Then
Workbooks.Add template:="Einplanung"
Else
MsgBox "Fehler"
End If
End Sub


Mit diesem Approach wird auch eine Kombination UNGLEICH und ODER klarer!
Greetz Renee

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige