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

MsgBox wenn Wert x vorhanden

Forumthread: MsgBox wenn Wert x vorhanden

MsgBox wenn Wert x vorhanden
07.09.2020 07:11:27
Tom
Guten Morgen Forengemeinde,
ich komme bei einem Problem nicht weiter und würde mich über eure Hilfe freuen.
Mein Problem ist folgendes:
Wenn Tabelle2 geöffnet wird soll geprüft werden ob in Tabelle1 Zelle C1 der Wert 1000 beträgt. Wenn dieses zutrifft, soll eine MsgBox erscheinen.
Innerhalb der Tabelle2 funktioniert es hervorragend mit
Private Sub Worksheet_Activate()
If Range("C1").Value = 1000 Then
MsgBox "Mein Text", vbOKOnly + vbInformation, "Hinweis"
End If
End Sub

Wo habe ich einen Fehler bei folgendem Code gemacht wenn der Wert aus Tabelle1 in Zelle C1 abgefragt werden soll?
Private Sub Worksheet_Activate()
If Worksheets("Tabelle1")Range("C1").Value = 1000 Then
MsgBox "Mein Text", vbOKOnly + vbInformation, "Hinweis"
End If
End Sub

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Es fehlt ein Punkt owT
07.09.2020 07:48:45
Charly
AW: Es fehlt ein Punkt owT
07.09.2020 08:02:48
Tom
Punkt gesetzt, alles funktioniert.
Manchmal sieht man den Wald vor lauter Bäumen nicht.
Vielen Dank für deine Hilfe und einen schönen Tag noch.
Danke
07.09.2020 08:07:02
Charly
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

MsgBox bei bestimmten Werten in Excel anzeigen


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Datei und gehe zu Tabelle2.

  2. Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  3. Suche im Projekt-Explorer auf der linken Seite nach Tabelle2 und doppelklicke darauf.

  4. Füge den folgenden Code in das Code-Fenster ein:

    Private Sub Worksheet_Activate()
        If Worksheets("Tabelle1").Range("C1").Value = 1000 Then
            MsgBox "Mein Text", vbOKOnly + vbInformation, "Hinweis"
        End If
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu Excel.

  6. Wechsle zu Tabelle2. Wenn der Wert in Zelle C1 von Tabelle1 gleich 1000 ist, wird die MsgBox angezeigt.


Häufige Fehler und Lösungen

  • Fehler: "Methode 'Range' ist für das Objekt 'Worksheets' nicht definiert."

    • Lösung: Stelle sicher, dass zwischen Worksheets("Tabelle1") und Range("C1") ein Punkt steht: Worksheets("Tabelle1").Range("C1").Value.
  • Fehler: MsgBox erscheint nicht.

    • Lösung: Überprüfe, ob der Wert in Tabelle1, Zelle C1 wirklich 1000 ist, und dass Du dich in Tabelle2 befindest.

Alternative Methoden

Anstelle einer MsgBox kannst Du auch eine Excel-Infobox erstellen, die den Benutzer informiert. Hier ist ein einfaches Beispiel:

Sub ShowInfoBox()
    If Worksheets("Tabelle1").Range("C1").Value = 1000 Then
        ' Hier könnte eine Infobox erscheinen
        MsgBox "Information: Wert in C1 ist 1000.", vbInformation, "Info"
    End If
End Sub

Du kannst diese Methode in einem Makro verwenden, das manuell oder durch ein Ereignis ausgelöst wird.


Praktische Beispiele

Wenn Du die MsgBox für andere Werte oder Zellen anpassen möchtest, kannst Du den Code wie folgt ändern:

Private Sub Worksheet_Activate()
    If Worksheets("Tabelle1").Range("C1").Value = 500 Then
        MsgBox "Der Wert ist 500", vbOKOnly + vbInformation, "Hinweis"
    End If
End Sub

Hier wird die MsgBox angezeigt, wenn der Wert in C1 gleich 500 ist.


Tipps für Profis

  • Verwende Konstanten: Anstatt den Wert direkt im Code zu verwenden, definiere eine Konstante, um den Code lesbarer zu machen.

    Const ThresholdValue As Integer = 1000
    If Worksheets("Tabelle1").Range("C1").Value = ThresholdValue Then
        MsgBox "Mein Text", vbOKOnly + vbInformation, "Hinweis"
    End If
  • Fehlerbehandlung: Implementiere einfache Fehlerbehandlungen, um sicherzustellen, dass der Code robust ist.

    On Error Resume Next
    If Worksheets("Tabelle1").Range("C1").Value = 1000 Then
        MsgBox "Mein Text", vbOKOnly + vbInformation, "Hinweis"
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Wie kann ich die MsgBox anpassen? Du kannst den Text und die Schaltflächen in der MsgBox anpassen, indem Du die Parameter im MsgBox-Befehl änderst.

2. Funktioniert das in allen Excel-Versionen? Ja, der gezeigte VBA-Code funktioniert in den meisten modernen Excel-Versionen (Excel 2010 und höher).

3. Was tun, wenn ich mehrere Bedingungen prüfen möchte? Du kannst ElseIf verwenden, um mehrere Bedingungen zu prüfen.

If Worksheets("Tabelle1").Range("C1").Value = 1000 Then
    MsgBox "Der Wert ist 1000."
ElseIf Worksheets("Tabelle1").Range("C1").Value = 500 Then
    MsgBox "Der Wert ist 500."
End If

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige