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

Forumthread: MsgBox mit Abfrage?

MsgBox mit Abfrage?
23.07.2004 19:33:09
MichiM
Hallo Leute,
gibt es eine MsgBox mit einer Abfragefunktion (nach dem Motto: Wollen Sie das wirklich? Ja - Nein).
Falls ja: Hat zufällig jemand ein entsprechendes Makro?
Gruss
MichiM
P.S. Meine Frage vom 21.7. ist noch offen - vielleicht kann da ja mal einer nachschauen...
https://www.herber.de/forum/messages/458779.html
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MsgBox mit Abfrage?
23.07.2004 19:40:29
Christoph
Hi MichiM
so zB:
Gruß
Christoph

Sub Msg()
If MsgBox("ok - abbrechen", vbOKCancel) = vbOK Then
MsgBox "ok"
Else: MsgBox "nich ok"
End If
End Sub

Wunderbar...
23.07.2004 19:46:41
MichiM
...kann man auch den Text in den Schaltflächen (Ok und Abbrechen) ändern?
Gruss
MichiM
Anzeige
AW: Wunderbar...
23.07.2004 19:53:51
Christoph
das nicht,aber du hast verschiedene zur Auswahl.
gib mal:
MsgBox("Text",
ein, dann geht eine Liste auf mit allen Optionen. näheres hier in der Hilfe.
Gruß
Christoph
Und es geht doch
24.07.2004 12:04:44
Werner
Grüezi Michi
Anstatt MSGBOX die Mldg:
https://www.herber.de/bbs/user/8847.xls
Gruss Werner
Anzeige
AW: Und es geht doch
24.07.2004 14:08:34
Christoph
Hallo Werner,
ich habe Michi so verstanden, dass er die Buttons selbst beschriften will.
Daher meine Antwort..."du hast verschiedene zur Auswahl"
Wenn ich dein Bsp richtig sehe, dann ist das nichts anderes als:
If MsgBox("Text", vbYesNo) = ...
bzw:
If MsgBox("Test", vbYesNo + vbCritical + vbDefaultButton2) = ...
sollte es dennoch die Möglichkeit geben, die Buttons mit "Äpfel" und "Birnen" zu beschriften, wäre ich auf die Lösung gespannt.
schönes Wochenende wünscht
Christoph
Anzeige
AW: Und es geht doch
24.07.2004 14:24:58
Werner
Grüezi Christoph
Die erste Frage von Michi war doch:
gibt es eine MsgBox mit einer Abfragefunktion (nach dem Motto: Wollen Sie das wirklich? Ja - Nein).
Ich glaube er wollte nur die 'OK' und 'Abbrechen' umbenennen.
Gruss Werner
AW: Und es geht doch
24.07.2004 15:12:15
MichiM
Hallo Werner und Christoph,
ihr habt beide ein recht :-)
Ich wollte das Ok-Abbrechen durch Ja-Nein ersetzen.
Wäre natürlich schön gewesen, wenn man die Schaltflächen selber "beschriften" könnte.
"Wie wollen Sie fortfahren? speichern, drucken"
Dann könnte ich mir jeweils eine Schaltfläche in der Tabelle sparen (anstatt "speichern" und "drucken" einfach nur "OK" oder "weiter" - der Rest hätte sich dann aus der Auswahl ergeben).
Aber wie ich es verstehe, gibt es nur die "begrenzte Auswahl".
Muss man halt mit leben :-)
Danke und Gruss
MichiM
Anzeige
Danke für die Rückmeldung
24.07.2004 15:38:36
Werner
Grüezi Michi
Das wird schon möglich sein, ev. mit einer UserForm. Da kannst Du beliebig Schaltflächen einbauen und beschriften. Aber da muss ich mit Hilfe leider passen.
Gruss Werner
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

MsgBox mit Abfrage in Excel VBA


Schritt-für-Schritt-Anleitung

Um eine MsgBox mit einer Abfrage in Excel VBA zu erstellen, die eine "Ja"- oder "Nein"-Antwort ermöglicht, kannst du folgenden Code verwenden:

Sub MsgBoxJaNein()
    Dim Antwort As VbMsgBoxResult
    Antwort = MsgBox("Wollen Sie das wirklich?", vbYesNo + vbQuestion, "Bestätigung")

    If Antwort = vbYes Then
        MsgBox "Du hast Ja gewählt."
    Else
        MsgBox "Du hast Nein gewählt."
    End If
End Sub

Dieser Code zeigt eine MsgBox an, die den Benutzer fragt, ob er fortfahren möchte. Die Schaltflächen sind als "Ja" und "Nein" beschriftet.


Häufige Fehler und Lösungen

  • Fehler: MsgBox zeigt nur OK und Abbrechen an
    Lösung: Stelle sicher, dass du vbYesNo als Argument in der MsgBox verwendest, um die Schaltflächen entsprechend zu ändern.

  • Fehler: MsgBox erscheint nicht
    Lösung: Überprüfe, ob der Code korrekt in ein Modul eingefügt wurde und dass du das Makro ausführst.


Alternative Methoden

Wenn du mehr Kontrolle über die Schaltflächen und deren Beschriftung benötigst, kannst du eine UserForm verwenden. Hier kannst du beliebige Schaltflächen hinzufügen und diese nach Belieben benennen.

  1. Gehe zu "Entwicklertools" > "Einfügen" > "UserForm".
  2. Füge Schaltflächen hinzu und bearbeite die Beschriftungen nach deinen Wünschen.
  3. Schreibe den entsprechenden Code in das UserForm-Modul.

Praktische Beispiele

Hier sind einige Beispiele, wie du die MsgBox für verschiedene Szenarien nutzen kannst:

  1. Bestätigung vor dem Löschen einer Datei:
Sub DateiLoeschen()
    If MsgBox("Möchten Sie die Datei wirklich löschen?", vbYesNo + vbCritical, "Löschen bestätigen") = vbYes Then
        ' Code zum Löschen der Datei
    Else
        MsgBox "Löschen abgebrochen."
    End If
End Sub
  1. Warnung bei kritischen Aktionen:
Sub KritischeAktion()
    If MsgBox("Achtung! Dies ist eine kritische Aktion. Fortfahren?", vbYesNo + vbCritical, "Warnung") = vbYes Then
        ' Kritische Aktion durchführen
    Else
        MsgBox "Aktion abgebrochen."
    End If
End Sub

Tipps für Profis

  • Verwende vbCritical, um eine kritische Warnung anzuzeigen; dies hebt die Wichtigkeit der Nachricht hervor.
  • Kombiniere vbYesNo mit vbCritical, um dem Benutzer eine klare Entscheidung zu geben und die Ernsthaftigkeit der Situation zu betonen.
  • Teste deine MsgBox in verschiedenen Szenarien, um sicherzustellen, dass sie in allen Fällen richtig funktioniert.

FAQ: Häufige Fragen

1. Kann ich die Buttons in der MsgBox selbst benennen?
Leider ist es nicht möglich, die Standard-Schaltflächen in einer MsgBox direkt umzubenennen. Du kannst jedoch eine UserForm erstellen, um benutzerdefinierte Schaltflächen zu verwenden.

2. Wie kann ich mehrere Optionen in einer MsgBox anbieten?
Du kannst vbYesNoCancel verwenden, um dem Benutzer drei Optionen anzubieten: Ja, Nein und Abbrechen.

3. Was sind die verschiedenen Typen von MsgBox?
Es gibt verschiedene Typen von MsgBox, wie vbOKOnly, vbAbortRetryIgnore, vbYesNo usw. Diese Steuerungen ermöglichen es dir, die Benutzeroberfläche entsprechend der Anforderungen anzupassen.

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