Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1752to1756
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
Inhaltsverzeichnis

Vergleichen mehrerer Variableninhalte

Vergleichen mehrerer Variableninhalte
13.04.2020 15:34:04
Andreas
Hallo liebe Community,
ich habe ein kleines Problem und sehe den Wald vor lauter Bäumen nicht...
Ich habe bis zu 6 Variable, die mit einem String beschrieben werden.
Der String kann nur vorbestimmte Werte annehmen, da er aus einer Untertabelle gefüttert wird.
Die verschiedenen Variablen können gleiche Werte annehmen, müssen sie aber nicht.
Jetzt möchte ich die Werte miteinander vergleichen, und die verschiedenen Kombinationen abarbeiten.
Folgendes Beispiel:
a=b=c d soll etwas anderes machen als a=b c=d
Und das ganze für alle möglichen Kombinationen (mit bis zu 6 Variablen)...
Ein Array hilft mir nicht weiter, da je nach Kombination unterschiedliche Rechenoperationen mit unterschiedlich vielen Variablen folgen.
Es geht mir hier nur um die Fall-Auswahl...
Ich hab das hier schonmal gebaut, aber egal welche ich kreiere, er springt immer in den ersten Case:
Select Case Layer
Case LayerType1 = LayerType2 = LayerType3 = LayerType4
Test_Layer = 1
Case LayerType1 = LayerType2 = LayerType3 LayerType4
Test_Layer = 2
Case LayerType1 = LayerType2 = LayerType4 LayerType3
Test_Layer = 3
Case LayerType1 = LayerType2 LayerType3 = LayerType4
Test_Layer = 4
Case LayerType1 = LayerType3 = LayerType4 LayerType2
Test_Layer = 5
Case LayerType1 = LayerType3 LayerType2 = LayerType4
Test_Layer = 6
Case LayerType1 = LayerType4 LayerType2 = LayerType3
Test_Layer = 7
Case LayerType1 LayerType2 = LayerType3 = LayerType4
Test_Layer = 8
Case LayerType1 LayerType2 LayerType3 LayerType4
Test_Layer = 9
Case LayerType1 LayerType2 LayerType3 = LayerType4
Test_Layer = 10
Case LayerType1 LayerType2 LayerType4 = LayerType3
Test_Layer = 11
Case LayerType1 LayerType2 = LayerType3 LayerType4
Test_Layer = 12
Case LayerType1 LayerType3 LayerType4 = LayerType2
Test_Layer = 13
Case LayerType1 LayerType3 = LayerType2 LayerType4
Test_Layer = 14
Case LayerType1 LayerType4 = LayerType2 LayerType3
Test_Layer = 15
Case LayerType1 = LayerType2 LayerType3 LayerType4
Test_Layer = 16
End Select
Kann mir jemand helfen?
Mit if-Anweisungen geht das natürlich, aber ich dachte, ich kann es mit etwas leichter machen...
Ich danke euch schonmal im voraus.
Grüße
Andreas

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

Betreff
Datum
Anwender
Anzeige
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 15:36:34
Hajo_Zi
Hallo Andreas,
Case LayerType1 = LayerType2 and Layertrype2= LayerType3 and Layertype3= LayerType4

AW: Vergleichen mehrerer Variableninhalte
13.04.2020 15:52:01
Andreas
Hallo Hajo,
vielen Dank für deine schnelle Antwort, aber irgendwas klappt noch nicht richtig...
Die Werte, die meine Variablen derzeit annehmen, sind folgende:
Hempel's Galvosil 15700
Hempel's Silicone Aluminium 56914
Hempel's Galvosil 15700
Hempel's Galvosil 15700
Demnach sind 1, 3 und 4 gleich, 2 unterscheidet sich.
Der Code durchläuft dennoch nur den ersten Case, bei dem alle 4 Werte gleich sind.
Den Code habe ich wie folgt angepasst:
Select Case Layer
Case LayerType1 = LayerType2 And LayerType2 = LayerType3 And LayerType3 = LayerType4
Test_Layer = 1
Case LayerType1 = LayerType2 And LayerType2 = LayerType3 And LayerType3 LayerType4
Test_Layer = 2
Case LayerType1 = LayerType2 And LayerType2 = LayerType4 And LayerType4 LayerType3
Test_Layer = 3
Case LayerType1 = LayerType2 And LayerType2 LayerType3 And LayerType3 = LayerType4
Test_Layer = 4
Case LayerType1 = LayerType3 And LayerType3 = LayerType4 And LayerType4 LayerType2
Test_Layer = 5
Case LayerType1 = LayerType3 And LayerType3 LayerType2 And LayerType2 = LayerType4
Test_Layer = 6
Case LayerType1 = LayerType4 And LayerType4 LayerType2 And LayerType2 = LayerType3
Test_Layer = 7
Case LayerType1 LayerType2 And LayerType2 = LayerType3 And LayerType3 = LayerType4
Test_Layer = 8
Case LayerType1 LayerType2 And LayerType2 LayerType3 And LayerType3 LayerType4
Test_Layer = 9
Case LayerType1 LayerType2 And LayerType2 LayerType3 And LayerType3 = LayerType4
Test_Layer = 10
Case LayerType1 LayerType2 And LayerType2 LayerType4 And LayerType4 = LayerType3
Test_Layer = 11
Case LayerType1 LayerType2 And LayerType2 = LayerType3 And LayerType3 LayerType4
Test_Layer = 12
Case LayerType1 LayerType3 And LayerType3 LayerType4 And LayerType2 = LayerType2
Test_Layer = 13
Case LayerType1 LayerType3 And LayerType3 = LayerType2 And LayerType2 LayerType4
Test_Layer = 14
Case LayerType1 LayerType4 And LayerType4 = LayerType2 And LayerType2 LayerType3
Test_Layer = 15
Case LayerType1 = LayerType2 And LayerType2 LayerType3 And LayerType3 LayerType4
Test_Layer = 16
End Select
Kannst du mir nochmal helfen?
Grüße
Andreas
Anzeige
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 15:53:49
Hajo_Zi
Hallo Andreas,
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
änderrn.
Das ist nur meine Meinung zu dem Thema.
Gruß Hajo
Anzeige
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 15:59:37
Andreas
Hallo Hajo,
ich darf die Datei weder verlinken, noch hochladen...
Es handelt sich dabei um Firmeninterna inkl. Einkauspreisen und Materialien... Ich denke, das wirst du verstehen
Ich hatte gehofft, dass du oder jemand anderes verraten kann, was ich falsch mache und der Code immer nur in den ersten Case springt... Obwohl ein Layer unterschiedlich ist und es deshalb definitiv nicht der erste Case sein kann...
Gruß
Andreas
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 17:30:38
onur

Select Case Layer

Was zur Hölle ist in dieser Zeile "Layer" ?
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 17:50:28
Andreas
Hallo Onur,
ich hab ja geschrieben, dass ich den Wald vor lauter Bäumen nicht sehe...
Wenn du eine Vermutung hast, warum mein Code nicht funktioniert, dann lass es mich doch bitte wissen.
Zu deiner Frage...
In meinem VBA-Buch steht, dass hinter dem "Select Case" ein Selektor hin muss.
Das kann eine Variable, eine Konstante opder ein Arithmetischer Ausdruck sein.
Wenn das falsch ist, hilf mir bitte...
Gruß
Andreas
Anzeige
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 18:02:52
onur
VBA GUT ? Ein Witz - oder?
Select Case XYZ 

vergleicht die Variable XYZ (und nix Anderes) mit den angegebenen Fällen, die danacvh kommen:
Select Case XYZ
Case 1 'wenn XYZ=1 ist
Tu Etwas
Case 2 'wenn XYZ=2 ist
Tu Was Anderes
End Select

AW: Vergleichen mehrerer Variableninhalte
13.04.2020 18:06:58
Andreas
Du musst nicht beleidigend werden!
Ich danke dir dennoch für dein Kommentar, aber ich hab es inzwischen hinbekommen.
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 18:35:17
onur
Wieso beleidigend?
Nix für Ungut, aber:
Wer WIRKLICH "VBA Gut" ist, kennt "Select Case".
Dass du gut bist in VBA kannst du in deinem Bekanntenkreis oder bei dir auf der Arbeit behaupten, wenn die Anderen noch weniger können als du und es nicht beurteilen können, aber in so einem Forum blamierst du dich nur mit solchen Bemerkungen.
Anzeige
AW: Vergleichen mehrerer Variableninhalte
13.04.2020 18:39:46
Andreas
Naja...
Jetzt wirst du zum A.... Aber nix für ungut...
Was glaubst du eigentlich, warum ich geschrieben habe, dass ich den Wald vor lauter Bäumen nicht sehe. Ab und zu hat man halt mal ein Brett vorm Kopf!
Ich habe nir behauptet, dass ich der Über-Crack bin!
Aber warum rechtfertige ich mich überhaupt vor DIR!
Wie gesagt, ich habs inzwischen ohne deine umfangreiche Hilfe hinbekommen.
Damit ist das für mich auch durch.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige