PDA

Vollständige Version anzeigen : CommandButton mit MsgBox


olerostock
17.07.2014, 12:42
Hallo,

ich habe auf einer Userform 3 CommandButton. CMD1 = "Abbruch", CMD2 = "Speichern" und CMD3 = "Beenden". Ich möchte nun, dass beim Click auf Abbruch sich eine MsgBox öffnet mit der Abfrage Ja und Nein mit dem Hinweis (Bei Ja wird ohne speichern geschlossen, bei Nein zurück zum Programm). Bei Ja soll die Datei ohne speichern geschlossen werden. Bei Nein soll die MsgBox verschwinden und die UserForm geöffnet bleiben. Beim Click auf Speichern soll sich das Menü "Speichern unter" öffnen und nach dem speichern wieder zurück auf die Userform. Bei beenden soll wieder eine MsgBox aufgehen mit Ja und Nein und dem Hinweis (bei Ja wird gespeichert und Datei geschlossen und bei Nein zurück zum Programm). Wenn Ja, dann soll wieder sich Menü speichern unter öffnen und nach dem speichern die datei geschlossen werden. Bei Nein soll sich nur die Datei schließen ohne speichern. Wer kann mir hierbei helfen?

Danke schon mal im Vorraus

haklesoft
17.07.2014, 14:17
Hey olerostock,

Du willst Deine User also gängeln? :entsetzt: Das möchte ich lieber nicht unterstützen. :nene:

Vorschlag: Du nimmst nur zwei Buttons in Deine UF auf. "Abbruch ohne Speicherung" und "Speichern und Beenden" (oder so ähnlich).
Dann brauchst Du keine MsgBoxen und die User werden nicht durch unnötige Abfragen verärgert.
Beim "Speichern und Beenden" kannst Du ggf. noch überwachen, ob die Speicherung vollzogen wurde und ggf. die UF offen halten.

olerostock
17.07.2014, 14:22
Ich möchte keine User gängeln. Ich möchte doch nur wissen wie das geht.

Gruß Olerostock

EarlFred
17.07.2014, 14:35
Hallo olerostock,

so:
If MsgBox( _
prompt:="Willste wirklich abbrechen?", _
Buttons:=vbYesNo, _
Title:="Was willste denn nu?") _
= vbYes Then
MsgBox "Dann mach Feierabend!"
Else
MsgBox "Weiter geht's!"
End If

Einbasteln in Deinen Gesamtcode, den keiner außer Dir sieht, darfst Du alleine.

Grüße
EarlFred

olerostock
17.07.2014, 14:43
Danke erst mal für die Hilfe. Ich habe jetzt mal die Datei "UserForm CommandButton mit MsgBox" hochgeladen.
Vieleicht ist es dann möglich mir zu helfen.

Danke
Olerostock

haklesoft
17.07.2014, 14:45
Hallo Olerostock,

für die von mir vorgeschlagenen zwei Buttons würde das hier schon reichen:Private Sub cmdCancel_Click()
Unload Me
End Sub

Private Sub cmdOK_Click()
If Application.Dialogs(xlDialogSaveWorkbook).Show = True Then
Unload Me
End If
End Sub

chris-kaiser
17.07.2014, 14:47
Hi,

reinkopiert und fertig ;)

EarlFred
17.07.2014, 14:48
Hallo olerostock,

Vieleicht ist es dann möglich mir zu helfen.
stimmt. Zu zeigen, wie es geht, kann man kaum als Hilfe bezeichnen.

Ich entschuldige mich für die Störung und leg mich wieder hin.

Grüße
EarlFred

olerostock
17.07.2014, 14:58
Danke für die Hilfe!
Natürlich nehme ich niemanden seine persönliche Meinung Übel. Ich versuche mich gerade in VBA reinzudenken. Da sollte dieses doch nur als Hilfestellung gedacht sein.
Ich werde mich jetzt ranmachen und die Button und den Code mit Eurer Hilfe kreieren.

Danke an Euch.