Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellenabfrage

Forumthread: Zellenabfrage

Zellenabfrage
Werner
Hallo, ich habe eine eine Modul mit Abfrage von drei Zelle . Zelle A1,B1;C1 mit nachfolgenden Modul:
------------------------------------------------------------------------------------------------ _ -------------------------------

Sub Atest()
Range("A1:C1").Select
Dim rngData As Range
Set rngData = Selection
If ActiveCell.Value = "" Then
MsgBox " Keine Daten", , ""
Exit Sub
End If
If rngData.Range("A1").Value > 0 And rngData.Range("B1") >= 0 And rngData.Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
If rngData.Range("A1").Value = 0 And rngData.Range("B1") = 0 And rngData.Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
If rngData.Range("A1").Value = 0 And rngData.Range("B1") = 0 And rngData.Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
If rngData.Range("A1").Value = 0 And rngData.Range("B1") = 1 And rngData.Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
End If
If rngData.Range("A1").Value = 0 And rngData.Range("B1") = 1 And rngData.Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End Sub

--------------Die Abfragen funktionieren .-------------------------------------------------------------------------------------------
Wenn ich aber jetzt noch anderen Zellen wie K12,L12;M12 mit dem gleichen Modul nur die Zellen geändert
abfragen möchte funktioniert es nicht , egal wie ich die Zellen mit 1 oder 0 belege kommt immer nur ein falsches Ergebniss.
Hier das Modul:
Sub K12test()
Range("K12:M12").Select
Dim rngData As Range
Set rngData = Selection
If ActiveCell.Value = "" Then
MsgBox " Keine Daten", , ""
Exit Sub
End If
If rngData.Range("K12").Value > 0 And rngData.Range("L12") >= 0 And rngData.Range("M12") >= 0   _
_
Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
If rngData.Range("K12").Value = 0 And rngData.Range("L12") = 0 And rngData.Range("M12") = 1  _
Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
If rngData.Range("K12").Value = 0 And rngData.Range("L12") = 0 And rngData.Range("M12") = 0  _
Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
If rngData.Range("K12").Value = 0 And rngData.Range("L12") = 1 And rngData.Range("M12") = 0  _
Then
MsgBox " Durchfahrt über A1.2 ", , ""
End If
If rngData.Range("K12").Value = 0 And rngData.Range("L12") = 1 And rngData.Range("M12") >= 1  _
Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End Sub

Danke für Eure Antworten
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellenabfrage
15.01.2012 10:47:00
Hajo_Zi
Hallo Werner,
ich hätte den ersten Code ein wenig anders aufgebaut, ist meiner Meinung nach übersichtlicher.
Option Explicit
Sub Atest()
Dim rngData As Range
Set rngData = Range("A1:C1")
If ActiveCell.Value = "" Then
MsgBox " Keine Daten", , ""
Else
If rngData.Range("A1").Value > 0 Then
If rngData.Range("B1") >= 0 And rngData.Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf rngData.Range("A1").Value = 0 Then
If rngData.Range("B1") = 0 Then
If rngData.Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf rngData.Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
ElseIf rngData.Range("B1") = 1 Then
If rngData.Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
ElseIf rngData.Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
End If
End If
End Sub

Anzeige
AW: Zellenabfrage
15.01.2012 11:17:03
Werner
Hallo Hajo,
danke für die Antwort.
Mit den Zelle A1:C1 funktioniert es , aber wenn ich andere Zellen nehmen K12:M12
geht es nicht. Ich weiß nicht warum.
Werner
AW: Zellenabfrage
15.01.2012 11:19:42
Hajo_Zi
Hallo Werner,
ich sehe das Problem nicht.
Option Explicit
Sub Atest()
If ActiveCell = "" Then
MsgBox " Keine Daten", , ""
Else
If Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf Range("A1") = 0 Then
If Range("B1") = 0 Then
If Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
ElseIf Range("B1") = 1 Then
If Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
ElseIf Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
ElseIf Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf Range("K1") = 0 Then
If Range("L1") = 0 Then
If Range("M1") = 1 Then
MsgBox " Durchfahrt über K1.1 ", , ""
ElseIf Range("M1") = 0 Then
MsgBox " Durchfahrt über K1.1 ", , ""
End If
ElseIf Range("L1") = 1 Then
If Range("M1") = 0 Then
MsgBox " Durchfahrt über K1.2 ", , ""
ElseIf Range("M1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
End If
End If
End Sub
Gruß Hajo
Anzeige
AW: Zellenabfrage
15.01.2012 11:58:58
Hajo_Zi
Hallo Werner,
oben war noch was Falsch.
Option Explicit
Sub Atest()
If Range("A1") = "" Then
MsgBox " Keine Daten", , ""
Else
If Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf Range("A1") = 0 Then
If Range("B1") = 0 Then
If Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
ElseIf Range("B1") = 1 Then
If Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
ElseIf Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
ElseIf Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf Range("K1") = 0 Then
If Range("L1") = 0 Then
If Range("M1") = 1 Then
MsgBox " Durchfahrt über K1.1 ", , ""
ElseIf Range("M1") = 0 Then
MsgBox " Durchfahrt über K1.1 ", , ""
End If
ElseIf Range("L1") = 1 Then
If Range("M1") = 0 Then
MsgBox " Durchfahrt über K1.2 ", , ""
ElseIf Range("M1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
End If
End If
End Sub
Gruß Hajo
Anzeige
AW: Zellenabfrage
15.01.2012 12:12:25
Werner
Hallo Hajo, bei geht nur immer nur Zelle A1:A3.
Kannst du mir bitte deine Exceldatei schicken.
Richter-web@t-online.de
Das wäre sehr nett. Danke Werner
AW: Zellenabfrage
15.01.2012 12:24:57
Hajo_Zi
Hallo Werner,
ich habe gerade gesehen in dem Code ist was doppelt.
Sub Atest1()
If Range("A1") = "" Then
MsgBox " Keine Daten", , ""
Else
If Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf rngData.Range("A1").Value = 0 Then
If Range("B1") = 0 Then
If Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf Range("B1") = 1 Then
If Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
ElseIf Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
End If
End If
End Sub

Wie Dein weiterer Vergleich da eingebunden werden soll ist mir nicht klar.
Gruß Hajo
Anzeige
AW: noch ein Fehler
15.01.2012 12:28:27
Hajo_Zi
Hallo Werner,
Sub Atest1()
If Range("A1") = "" Then
MsgBox " Keine Daten", , ""
Else
If Range("A1") > 0 Then
If Range("B1") >= 0 And Range("C1") >= 0 Then
MsgBox " Zug am Vorsignal A1 !", , ""
End If
ElseIf Range("A1").Value = 0 Then
If Range("B1") = 0 Then
If Range("C1") = 1 Then
MsgBox " Durchfahrt über A1.1 ", , ""
ElseIf Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.1 ", , ""
End If
ElseIf Range("B1") = 1 Then
If Range("C1") = 0 Then
MsgBox " Durchfahrt über A1.2 ", , ""
ElseIf Range("C1") >= 1 Then
MsgBox " Alle Gleise belegt !!! ", , ""
End If
End If
End If
End If
End Sub
Gruß Hajo
Anzeige
AW: noch ein Fehler
15.01.2012 12:50:56
Werner
Hallo Hajo, jetzt funktioniert alles. Danke nochmals.
Da kann ich jetzt meine Modellbahn weiter programmieren.
Schönen Sonntag noch.
Werner
AW: Zellenabfrage
15.01.2012 11:22:48
Werner
Hallo Hajo, Nachtrag FehlerMeldung :
egal was man in die Zellen eingibt er zeigt nur "Durchfahrt über A1.1" an.
Werner
AW: Zellenabfrage
15.01.2012 11:43:45
Hajo_Zi
Hallo Werner,
in meiner Datei zeigen beide Makro den Hinweis " Zug am Vorsignal A1"
Gruß Hajo
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige