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

Checkbox mit MSG Box Verknüpfen?

Forumthread: Checkbox mit MSG Box Verknüpfen?

Checkbox mit MSG Box Verknüpfen?
22.02.2017 21:32:53
Andi

Hallo,
Mein "Suchmakro" habe ich soweit ganz gut zusammen.
Ist es möglich, wenn im Userform1 die Chekbox2 gesetzt ist, das im untenstehenden
Makro die MSG Box " If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then _ " nicht aufgerufen wird?
Ist die Checkbox2 ohne Haken, dann soll die Msg Box- Abfrage wieder aktiv sein.

  • Option Explicit
    Sub Kabelsucher()      'Suchen
    Dim d As Range
    Dim firstAddress As String
    With Tabelle4.Range("Z58:Z69")
    Set d = .Find(Tabelle4.Range("R4").Text, LookIn:=xlValues)
    If Not d Is Nothing Then
    firstAddress = d.Address
    Do
    Select Case d.Column
    Case Is = 26
    If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then _
    Call bringe_Kabel_jetzt
    Case Else
    MsgBox "Halt kein gültiger Wert- Stopp"
    Exit Sub
    End Select
    Set d = .FindNext(d)
    Loop While Not d Is Nothing And d.Address  firstAddress
    End If
    End With
    End Sub
    


  • Wie kann ich das einbinden?
    Grüße Andi
    Anzeige

    1
    Beitrag zum Forumthread
    Beitrag zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Checkbox mit MSG Box Verknüpfen?
    22.02.2017 21:48:25
    Mullit
    Hallo,
    so:
    If Not Userform1.Checkbox2.Value Then _
    If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then _
    Call bringe_Kabel_jetzt
    

    Gruß, Mullit
    Anzeige
    ;
    Anzeige
    Anzeige

    Infobox / Tutorial

    Checkbox mit MSG Box Verknüpfen


    Schritt-für-Schritt-Anleitung

    Um eine Checkbox in einem Userform mit einer MSG Box zu verknüpfen, kannst du den folgenden Ansatz verwenden. Hier sind die Schritte, die du befolgen solltest:

    1. Öffne dein Excel-Dokument und gehe in den VBA-Editor (Alt + F11).
    2. Füge ein Userform hinzu, falls noch nicht geschehen, und füge eine Checkbox (z.B. Checkbox2) hinzu.
    3. Erstelle das Makro, das die MSG Box aufruft, und integriere eine Bedingung für die Checkbox.

    Hier ist ein Beispiel, wie du das umsetzen kannst:

    Sub Kabelsucher() 'Suchen
        Dim d As Range
        Dim firstAddress As String
        With Tabelle4.Range("Z58:Z69")
            Set d = .Find(Tabelle4.Range("R4").Text, LookIn:=xlValues)
            If Not d Is Nothing Then
                firstAddress = d.Address
                Do
                    Select Case d.Column
                        Case Is = 26
                            If Not Userform1.Checkbox2.Value Then
                                If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then
                                    Call bringe_Kabel_jetzt
                                End If
                            End If
                        Case Else
                            MsgBox "Halt kein gültiger Wert - Stopp"
                            Exit Sub
                    End Select
                    Set d = .FindNext(d)
                Loop While Not d Is Nothing And d.Address <> firstAddress
            End If
        End With
    End Sub

    Häufige Fehler und Lösungen

    • Fehler: MSG Box erscheint trotz gesetzter Checkbox

      • Lösung: Überprüfe, ob du die Checkbox korrekt referenziert hast. Stelle sicher, dass Userform1.Checkbox2.Value den richtigen Wert zurückgibt.
    • Fehler: Makro läuft nicht

      • Lösung: Stelle sicher, dass das Userform korrekt geladen ist und die Checkbox tatsächlich vorhanden ist.

    Alternative Methoden

    Eine andere Möglichkeit, die Checkbox mit der MSG Box zu verknüpfen, ist die Verwendung von Ereignisprozeduren. Du kannst die Checkbox so einrichten, dass sie bei Änderungen direkt die Entscheidung trifft:

    Private Sub Checkbox2_Click()
        If Checkbox2.Value Then
            ' Logik, wenn Checkbox aktiviert ist
        Else
            ' Logik, wenn Checkbox deaktiviert ist
            If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then
                Call bringe_Kabel_jetzt
            End If
        End If
    End Sub

    Praktische Beispiele

    Hier ist ein einfaches Beispiel, das zeigt, wie du die Checkbox mit einer MSG Box verbinden kannst:

    1. Füge eine Checkbox und einen Button in dein Userform ein.
    2. Verknüpfe den Button mit folgendem Code:
    Private Sub Button1_Click()
        If Not Checkbox2.Value Then
            If MsgBox("Soll ich ein Kabel bringen?", vbQuestion + vbYesNo) = vbYes Then
                Call bringe_Kabel_jetzt
            End If
        End If
    End Sub

    Mit dieser Methode hast du volle Kontrolle darüber, wann die MSG Box erscheint.


    Tipps für Profis

    • Debugging: Nutze Debug.Print, um Werte von Variablen während der Ausführung des Makros zu überprüfen. Das hilft dir, Fehler schneller zu identifizieren.
    • Modularität: Halte deinen Code modular, indem du häufig verwendete Logik in separate Subroutinen auslagerst, um die Wartbarkeit zu verbessern.
    • User Experience: Überlege, wie die Benutzererfahrung verbessert werden kann, z.B. durch informative MSG Boxen, die dem Benutzer klare Anweisungen geben.

    FAQ: Häufige Fragen

    1. Wie kann ich die Checkbox standardmäßig aktivieren oder deaktivieren?
    Du kannst dies im UserForm_Initialize-Event des Userforms festlegen:

    Private Sub UserForm_Initialize()
        Checkbox2.Value = False ' oder True, je nach Wunsch
    End Sub

    2. Was mache ich, wenn die MSG Box nicht angezeigt wird?
    Überprüfe, ob die Bedingung für die Checkbox korrekt implementiert ist und dass das Makro ordnungsgemäß aufgerufen wird.

    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