Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Excel MsgBox über "Wenn" Funktion

Excel MsgBox über "Wenn" Funktion
29.05.2013 12:25:18
Jörg
Hallo liebe Excelgemeinde,
ich bräuchte Unterstützung.
Ich habe eine Exceltabelle mit verschiedenen Werten und Auswahlfeldern!
Beispiel:
wenn in A1 "Hallo" und in B1 (dropdownliste) "Du" seht soll eine MsgBox erscheinen mit dem Hinweiß "Max Mustermann anrufen"!
Wie löse ich die Anforderung, ich hoffe ich habe mich einigermaßen verständlich ausgedrückt!
Vielen Dank für Hilfe
LG
Jörg

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 12:27:47
Hajo_Zi
Hallo Jörg,
bei Auswahl, beim öffnen ....

AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 12:34:35
Jörg
Hallo Hajo,
bei Auswahl als Hinweiß und soll über OK geschlossen werden!
LG
Jörg

AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 12:40:10
Hajo_Zi
Hallo Jörg,
unter die Tabelle.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "A1" Or _
Target.Address(False, False) = "B1" Then
If Range("A1") = "Hallo" And Range("B1") = "Du" Then
MsgBox "Hinweis"
End If
End If
End Sub

Gruß Hajo

Anzeige
AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 13:20:06
Jörg
Hallo Hajo,
super hat schon mal gefunzt!
Wie siehts das Ganze aus wenn die Spalten wachsen, also A1-A? und B1-B?
Das heißt die MsgBox soll immer dann erscheinen wenn die Werte "Hallo" und "Du" übereinstimmen aber nur bei der aktiven Auswahl, also wenn in der Dropdownliste "Du" ausgwählt wird, aber nur im Moment der Auswahl nicht dauerhaft wenn der Wert schon gewählt wurde un das über die Ganze Spalte!
Danke für deine Hilfe
LG
Jörg

Anzeige
AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 13:24:53
Hajo_Zi
Hallo Jörg,
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Or Target.Column = 2 Then
If Cells(Target.Row, 1) = "Hallo" And Cells(Target.Row, 2) = "Du" Then
MsgBox "Hinweis " & Target.Row
End If
End If
End Sub
Gruß Hajo

Anzeige
AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 14:28:21
Jörg
Hallo Hajo,
super es hat alles so geklappt wie ich es mir vorgestellt habe!
Vielen Dank für die super schnelle Unterstützung!
LG
Jörg

AW: Excel MsgBox über "Wenn" Funktion
29.05.2013 14:28:29
Jörg
Hallo Hajo,
super es hat alles so geklappt wie ich es mir vorgestellt habe!
Vielen Dank für die super schnelle Unterstützung!
LG
Jörg
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel MsgBox über "Wenn" Funktion nutzen


Schritt-für-Schritt-Anleitung

Um eine MsgBox in Excel über eine "Wenn" Funktion zu implementieren, kannst du den folgenden VBA-Code verwenden. Dieser wird aktiviert, wenn sich der Wert in den Zellen A1 oder B1 ändert.

  1. Öffne deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Wähle im Projekt-Explorer das Arbeitsblatt aus, in dem du die MsgBox anzeigen möchtest.

  3. Füge den folgenden Code in das Codefenster ein:

    Option Explicit
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Address(False, False) = "A1" Or _
          Target.Address(False, False) = "B1" Then
           If Range("A1") = "Hallo" And Range("B1") = "Du" Then
               MsgBox "Max Mustermann anrufen!"
           End If
       End If
    End Sub
  4. Schließe den VBA-Editor und kehre zu deiner Excel-Datei zurück.

  5. Teste die Funktion, indem du "Hallo" in A1 und "Du" in B1 eingibst.


Häufige Fehler und Lösungen

Problem: Die MsgBox erscheint nicht, wenn die Bedingungen erfüllt sind.
Lösung: Überprüfe, ob der VBA-Code im richtigen Arbeitsblatt eingefügt wurde. Stelle sicher, dass Makros aktiviert sind.

Problem: MsgBox erscheint bei jeder Veränderung in A1 oder B1.
Lösung: Achte darauf, dass im Code die Bedingungen korrekt gesetzt sind. Der Code sollte nur dann die MsgBox aufrufen, wenn die spezifischen Werte eingegeben werden.


Alternative Methoden

Eine alternative Methode zur Anzeige einer MsgBox ist die Verwendung von Datenüberprüfung in Kombination mit einer benutzerdefinierten Funktion. Du kannst auch die Worksheet_SelectionChange-Ereignisprozedur verwenden, um die MsgBox anzuzeigen, wenn eine Zelle ausgewählt wird, anstatt nur bei Änderungen.

Hier ist ein Beispiel:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Address = "$A$1" Or Target.Address = "$B$1" Then
        If Range("A1") = "Hallo" And Range("B1") = "Du" Then
            MsgBox "Max Mustermann anrufen!"
        End If
    End If
End Sub

Praktische Beispiele

Angenommen, du möchtest die MsgBox für eine gesamte Spalte aktivieren. Hier ein Beispiel, wie der Code aussehen könnte:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Columns("A:B")) Is Nothing Then
        If Cells(Target.Row, 1) = "Hallo" And Cells(Target.Row, 2) = "Du" Then
            MsgBox "Hinweis " & Target.Row
        End If
    End If
End Sub

Dieser Code zeigt die MsgBox an, wenn in der gesamten Spalte A "Hallo" und in der Spalte B "Du" steht.


Tipps für Profis

  • Verwende die Option Explicit-Anweisung, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
  • Teste deinen Code regelmäßig, um sicherzustellen, dass alle Bedingungen korrekt eingestellt sind und die MsgBox nur dann angezeigt wird, wenn es gewünscht ist.
  • Nutze die Möglichkeit, MsgBox-Buttons anzupassen, um die Interaktion zu verbessern. Beispiel:

    MsgBox "Max Mustermann anrufen!", vbInformation, "Hinweis"

FAQ: Häufige Fragen

1. Frage
Wie kann ich die MsgBox anpassen, um mehr Informationen anzuzeigen?
Antwort: Du kannst den Text in der MsgBox beliebig anpassen, indem du ihn in den Anführungszeichen änderst.

2. Frage
Funktioniert dieser Code in allen Excel-Versionen?
Antwort: Ja, der VBA-Code sollte in Excel-Versionen ab 2007 funktionieren. Stelle sicher, dass Makros aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige