Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1544to1548
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

select case

select case
17.03.2017 11:28:45
Andi
Hi,
ich muss von der Arbeit aus eine Bewertung mit einer Excel Tabelle durchführen.
ich bin nur auf diesem gebiet nicht wirklich bewandert und hab mich deshalb schon mal im Internet informiert um zumindest ein einfaches Makro mit Formular schreiben zu können. Hier habe ich jetzt aber ein Problem mit einer select case Funktion. Und zwar hab ich im Formular ein Kombinationsfeld mit 5 bzw. 6 Antwortmöglichkeiten. Die select Funktion sollte jetzt eigentlich rauslesen welche Möglichkeit ich gewählt habe und dem ganzen dann einen Wert zuweisen. Das Problem ist, dass immer nur der erste case gewählt wird. Ich bin auch mit der debuggen Funktion schon mal alle Einzelschritte durchgegangen und hab da gemerkt, dass nach dem ersten case die anderen einfachen übersprungen werden und der Prozess sofort zu end select geht. Weiß vielleicht jemand woran das liegen kann?
Mein Code Lautet wie folgt:
Select Case cmbStillstandszeit
Case 0
Stillstandszeit = 1
Case 1
Stillstandszeit = 2
Case 2
Stillstandszeit = 3
Case 3
Stillstandszeit = 4
Case 4
Stillstandszeit = 5
End Select
Vielen Dank für eure Hilfe
Gruß Andi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: select case
17.03.2017 11:38:17
Crazy
Hallo
du fragst den Eintrag der Combobox ab?
das ist dann der Listindex
Select Case cmbStillstandszeit.ListIndex
MfG Tom
AW: select case
17.03.2017 12:32:32
Rudi
Hallo,
Comboboxen beinhalten Text!!!.
Case "0"
Case "1"
etc.
Gruß
Rudi
AW: select case
17.03.2017 16:17:50
Zwenn
Hallo Andi,
wenn Du wirklich nur genau das machen willst, was Du in Deinem Post mit Select Case abgebildet hast, geht das auch mit einer Zeile:
Stillstandzeit = CInt(cmbStillstandszeit) + 1
Dabei gehe ich auch davon aus, dass es sich bei cmbStillstandszeit um einen String handelt. Dieser wird mit CInt(cmbStillstandszeit) explizit in einen Integer umgewandelt. Du machst ja nix anderes, als der Variablen Stillstandszeit einen Wert zuzuweisen, der um 1 höher ist, als der Wert von cmbStillstandszeit.
Die explizite Typumwandlung würde VBA auch implizit durchführen (soweit ich mich erinnere). Es ist aber übersichtlicher, wenn Typen explizit umgewandelt werden, um auf einen Blick zu sehen, dass eine Typwandlung vorgenommen wird.
Hier gibt es eine ausführliche Anleitung dazu:
https://msdn.microsoft.com/de-de/library/s2dy91zy.aspx
Viele Grüße,
Zwenn
Anzeige
AW: select case
20.03.2017 08:27:57
Andi
Vielen Dank schon einmal für die Hilfe.
Also cmbStillstandszeit.ListIndex hab ich auch schon versucht, da kommt aber dann immer folgende Fehlermeldung: Laufzeitfehler 424
Objekt erforderlich
Mein Formular wird aber davor schon geöffnet.
AW: select case
20.03.2017 10:03:02
Crazy
Hallo
was ist bei dir ein Formular? eine Userform?
wo wird Select Case abgefragt?
hinter einem Steuerelement der Userform?
wenn es kein Element der Userform ist dann sollte
der Name der Userform mit angegeben werden
z.B.
Select Case Userform1.cmbStillstandszeit
MfG Tom
Anzeige
AW: select case
20.03.2017 14:28:01
Andi
Hat sich erledigt hab es geschafft indem ich den Code direkt in die UserForm geschrieben habe und den Umweg über ein Steuerelement weggelassen habe.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige