Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1588to1592
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

Optionsfeld und Msg

Optionsfeld und Msg
15.11.2017 12:27:06
Marcus
Hallo zusammen,
Ich habe in einer VBA drei OptionsButtons. Wenn ich jetzt den CommanButtan drücke und es wurde keiner der Drei OptionsButtons ausgewählt, soll sich ein Msg-Fenster öffnen in dem die entsprechende Info steht.
Wir muss das zu der Code aussehen?
Mfg Marcus

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optionsfeld und Msg
15.11.2017 12:37:23
Daniel
Hi
if Not (optionbutton1 or optionbutton2 or optionbutton3) then
Msgbox "Bitte eine der drei Optionen auswählen"
Else
hier der Code wenn was ausgewählt wurde
End if
prinzipell empfehle ich, anstelle der drei Optionbuttons eine Listbox oder Combobox mit drei Listeneinträgen zu verwenden.
Das vereinfacht dir den Umgang mit dieser Eingabe, weil du nur ein Steuerelement hast und nicht drei:
If Listbox1.ListIndex = -1 then
Msgbox "Bitte eine Auswahl treffen"
else
end if
Gruß Daniel
AW: Optionsfeld und Msg
15.11.2017 12:45:14
Peter(silie)
Hallo,
warum nicht einfach einen der 3 OptionButtons von anfang an auf true setzen?
Damit sparst du dir Error Handling.
Desweiteren rate ich von MsgBoxen als warnhinweis ab, sie sind einfach extrem störend
für den nutzer und bedeuten einen klick mehr.
Lasse doch einfach deine Option Buttons blinken, sollte keiner ausgewählt sein.
So könnte ein Blink Sub z.B. aussehen:
Sub blink()
Dim color1(1) As Long
Dim blink As Boolean
Dim t As Double
Dim i As Long
Const TIME As Double = 0.08
On Error Resume Next
color1(0) = 255
color1(1) = 125
Do
blink = Not blink
Me.OptionButton1.ForeColor = color1(-blink)
Me.OptionButton2.ForeColor = color1(-blink)
Me.OptionButton3.ForeColor = color1(-blink)
t = Timer + TIME
Do While Timer  5
End Sub

Anzeige
AW: Optionsfeld und Msg
15.11.2017 13:00:55
Marcus
Ui super vielen Dank
AW: Optionsfeld und Msg
15.11.2017 13:02:30
Marcus
Wo muss ich das Eintragen damit die Blinken?
AW: Optionsfeld und Msg
15.11.2017 13:26:43
Peter(silie)
Hallo, entweder in ein Modul oder in den Code der UserForm
hier eine Beispiel Mappe: https://www.herber.de/bbs/user/117687.xlsm
hier nur Code:
'// Wenn du den Code Komplett in den Code der Userform schreibst
'// dann einfach das ganze so:
Private Sub CommandButton1_Click()
If Not Me.OptionButton1 And _
Not Me.OptionButton2 And _
Not Me.OptionButton3 Then
Form_blink
End If
End Sub
Sub Form_blink()
Dim color1(1) As Long
Dim blink As Boolean
Dim t As Double
Dim i As Long
Const TIME As Double = 0.08
On Error Resume Next
color1(0) = 255
color1(1) = 125
Do
blink = Not blink
Me.OptionButton1.ForeColor = color1(-blink)
Me.OptionButton2.ForeColor = color1(-blink)
Me.OptionButton3.ForeColor = color1(-blink)
t = Timer + TIME
Do While Timer  5
Me.OptionButton1.ForeColor = vbBlack
Me.OptionButton2.ForeColor = vbBlack
Me.OptionButton3.ForeColor = vbBlack
End Sub
'//Wenn du den Blink Sub in ein Modul schreiben willst
'//dann einfach ein Modul erstellen, Code rein
'//und hier dann den Sub aufrufen, am besten mit [Modulname].[Prozedurname]
Private Sub CommandButton2_Click()
If Not Me.OptionButton1 And _
Not Me.OptionButton2 And _
Not Me.OptionButton3 Then
'[Modul].[Prozedur]
Modul1.Modul_blink
End If
End Sub

Anzeige
AW: Optionsfeld und Msg
15.11.2017 13:30:23
Marcus
Ja leider ist das Problem jetzt noch das der Button nur in die Tabelle eintragen darf, wenn einer der Drei Buttons ausgewählt ist...
AW: Optionsfeld und Msg
15.11.2017 13:46:49
Marcus
Ja hab das jetzt auch endlich gerafft und jetzt blinken sie :). Habe jetzt nur noch das Problem das er nicht in die Tabelle eintragen soll wenn man in der Maske auf "übernehmen" drückt. denn das passiert immer noch....
Anzeige
AW: Optionsfeld und Msg
15.11.2017 14:03:06
Marcus
Gefunden es fehlte die "Exit Sub" am Ende :)
Was u.U. dazu führt, dass sich der Anwender
15.11.2017 14:25:08
Daniel
keine Gedanken darüber macht, welche Auswahl sinnvoll ist sondern einfach das übernimmt, was vorgegeben ist.
Wenn du eine bewusste Entscheidung des Anwenders haben willst, ist es nicht sinnvoll einen Wert vorab einzustellen.
Gruß Daniel
Das ist nur bedingt richtig, ...
15.11.2017 15:09:49
Luc:-?
…Leute;
voll bestätigt wird diese Ansicht im eMail-Verkehr und hier im Forum, wo die Voreinstellung des Betreffs in ca 80% der Fälle zur Übernahme desselben führt, egal, ob zum Inhalt der Nachricht passend oder nicht! :-]
Eine Voreinstellung von Input-, CheckBoxes u.ä. sollte aber nur beim 1.Mal mit einem Default-Wert erfolgen, der soweit möglich, nicht direkt verwendet wdn kann oder aber der häufigsten sinnvollen Einstellung entspricht (vgl Xl-Einstellungen!). Ansonsten könnte danach auch die letzte Einstellung gemerkt und als vorrangiger sekundärer Default-Wert bis zum Ende der Xl-Sitzung ver­wendet wdn.
Gruß, Luc :-?
„Die Intelligenz ist auf diesem Planeten eine Konstante, die Bevölkerung nimmt aber zu!“ Auch deshalb informieren mit …
Anzeige
Stimme dir bei! Gute Argumente... owt
15.11.2017 16:09:25
Peter(silie)

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige