IF-THEN-ELSE geht nicht

Informationen und Beispiele zu den hier genannten Dialog-Elementen:


Excel-Version: 97
nach unten

Betrifft: IF-THEN-ELSE geht nicht
von: Wilhelm
Geschrieben am: 02.05.2002 - 14:39:45

Hallo, ich habe folgenden Code eingebaut, aber er funtioniert nur teilweise, kann mir jemand sagen, warum?

Private Sub CommandButton1_Click()
Dim Zeile As Long
Zeile = ActiveCell.Row
With Workbooks("Streitfall.xls").Worksheets("Journaldruck")
.Range("C8") = Range("A" & Zeile)
.Range("C10") = Range("B" & Zeile)
.Range("F8") = Range("C" & Zeile)
End With
If Worksheets("Journal").Range("N" & Zeile) = WAHR Then
Worksheets("Journaldruck").Range("B18") = "Alles OK! "
Else
Worksheets("Journaldruck").Range("B18") = ""
End If

End Sub


Der Button ist in der Tabelle "Journal), alle Tabellen sind in einer Mappe.

Der obere Teil (with) funktioniert einwandfrei, der if-then-else-Teil klappt nicht. Egal, ob die angesprochene Zelle
WAHR oder FALSCH enthält, es wird immer "Alles OK" angezeigt.
Wenn die angespochene Zelle FALSCH enthält, soll B18 leerbleiben.

Woran kann das liegen?

Gruß
und Danke schonmal

Wilhelm


nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: Ralf W.
Geschrieben am: 02.05.2002 - 14:52:29

Hallo Wilhelm,

versuch's doch mal mit TRUE anstelle von WAHR:

If Worksheets("Journal").Range("N" & Zeile) = TRUE Then

Viel Spaß
Ralf

nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: Wilhelm
Geschrieben am: 02.05.2002 - 15:34:46

Danke erstmal, ich kann es erst heute abend testen. Aber ich habe Bedenken, ob es klappt, denn es steht ja WAHR oder FALSCH als Text in der Zelle. Warum sollte es dann mit TRUE klappen. Wenn es dafür einen Grund gibt, würde der mich sehr interessieren.
Gruß
Wilhelm

nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: Wilhelm
Geschrieben am: 02.05.2002 - 15:45:27

Hallo Ralf, es geht ja auch nicht, wenn ich in der angesprochnen Zelle das Wort "BUTTERBROT" stehen habe und den Code in

If Worksheets("Journal").Range("N" & Zeile) = BUTTERBROT Then

ändere. Ich habe auch schon versucht "WAHR" bzw "BUTTERBROT" in Anführungzeichen zu setzen, geht auch nicht.

Wilhelm


nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: AJK
Geschrieben am: 02.05.2002 - 15:54:35

Hallo,

probier doch mal
If Worksheets("Journal").Range("N" & Zeile).value= ....
Gruß

Andreas


nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: Heinz A. Wankmüller
Geschrieben am: 02.05.2002 - 16:22:12

Hallo Wilhelm,

VBA spricht Englisch, also
If Worksheets("Journal").Range("N" & Zeile) = True Then

ohne Anführungsstriche

Gruß
Heinz


nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: Michael Scheffler
Geschrieben am: 02.05.2002 - 16:37:49

Hallo,

weil VBA nur Englisch kann. Kleiner Tipp.

IF ... = True ist nicht notwendig


If Worksheets("Journal").Range("N" & Zeile) 

reicht aus, damit umgehst Du auch Dein leidiges Sprachproblem.

Gruß

Micha


nach oben   nach unten

DANKE - Aber nichts geht
von: Wilhelm
Geschrieben am: 02.05.2002 - 17:19:06

Herzlichen Dank für Eure Tips, aber bisher hat keiner davon zum Erfolg geführt, ich werde wohl aufgeben müssen.
Trotzdem : DANKE!

Wilhelm

nach oben   nach unten

Re: IF-THEN-ELSE geht nicht
von: WernerB.
Geschrieben am: 02.05.2002 - 17:38:35

Hallo Wilhelm,

wenn in der Zelle
Worksheets("Journal").Range("N" & Zeile)
eine Formel drinsteht, die WAHR oder FALSCH ausgibt, solltest Du im Makro anstelle von WAHR tatsächlich TRUE verwenden (aber diesen Tipp hast Du hier schon erhalten).

Wenn in der Zelle
Worksheets("Journal").Range("N" & Zeile)
keine Formel drinsteht, sondern der reine Text (auch in der Bearbeitungszeile so sicht- und veränderbar), solltest Du im Makro das WAHR in Anführungszeichen ("WAHR") packen.
Sollte das auch nicht klappen, würde ich untersuchen, ob in dieser Zelle außer dem "WAHR" eventuell noch Leerzeichen stehen und diese ggf. entfernen.

Mehr fällt mir dazu leider auch nicht ein

Viel Erfolg wünscht
WernerB.


nach oben   nach unten

Alles Geht!
von: Heinz A. Wankmüller
Geschrieben am: 02.05.2002 - 18:53:17

Hallo Wilhelm,
hier scheint es sich auf die Frage zuzuspitzen, was denn in deiner berühmten Zelle nun wirklich steht, bzw. wie der Wert dort ermittelt wird.
Ich bin davon ausgegangen, dass dort ein Bool'scher Wert steht, also ein Ergebnis einer Wahrheitsprüfung. Das schjeint also nicht der Fall zu sein. Wenn es das Ergebnis einer Wennabfrage ("WENN(A=B;"WAHR";""), dann ist es einfach ein Wort und in Anführungszeichen zu setzen ....
Also wie kommt der Wert zustande und welcher ist es?

Gruß
Heinz


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Anzahl max. gleichzeitig öffenbarer Excel-Files"