Thema Datum  Von Nutzer Rating
Antwort
18.01.2019 08:24:12 megawunk
NotSolved
18.01.2019 14:08:53 losgehts
NotSolved
18.01.2019 14:28:12 Markus
NotSolved
Blau Ereignis nach VB Cancel
18.01.2019 21:20:07 Gast01234
NotSolved
19.01.2019 01:36:47 megawunk
NotSolved
19.01.2019 07:39:09 Gast43210
NotSolved
23.01.2019 07:22:57 megawunk
NotSolved
28.01.2019 01:30:35 Steffen
NotSolved

Ansicht des Beitrags:
Von:
Gast01234
Datum:
18.01.2019 21:20:07
Views:
544
Rating: Antwort:
  Ja
Thema:
Ereignis nach VB Cancel

Noch nie was von strukturierter Prtogrammierung gehört?

Den Code kann doch keiner lesen, ohne Kopfschmerzen zu bekommen.

Wieso rufst du MsgBox 3 mal auf ?

Mit 

Ausgangsblatt = ActiveSheet.Name

wird die Variable "Ausgangsblatt" mit dem Namen des aktuellen Blattes gesetzt.

Bei Cancel willst du mit:

Sheets(Ausgangsblatt).Select auf das aktuelle Blatt springen??

Da du aber zwischenzeitlich kein anderes Blatt aufgerufen hast, ist Ausganmgsblatt sowieso schon gewählt.

Hast du den Schrott eigentlich selbst "programmiert" ?

Hier - dsmit du mal deinen Code lesen kannst:

Sub Suchen()
    Dim ws As Worksheet
    Dim c
    Dim firstAddress As String
    Dim secAddress
    Dim GFound As Boolean
    Dim GWeiter As Boolean
    Dim Ausgangsblatt As Variant
    Ausgangsblatt = ActiveSheet.Name
    GWeiter = False
    GFound = False
anf:
    SSearch = InputBox("Suchen nach:", "Stichwort-Suche / Suchfunktion", SSearch)
    If SSearch = "" Then
       End
    End If
weiter:
    For Each ws In Worksheets
        With ws.Cells
            Set c = .Find(SSearch, LookIn:=xlValues, MatchCase:=False)
            If Not c Is Nothing Then
                GFound = True
                ws.Select
                c.Select
                firstAddress = c.Address
                If MsgBox("Weitersuchen?", vbQuestion + vbYesNoCancel) = vbYes Then
                    Do
                        Set c = .FindNext(c)
                        secAddress = c.Address
                        If c.Address = firstAddress Then
                            Exit Do
                        End If
                        c.Select
                        If MsgBox("Weitersuchen?", vbQuestion + vbYesNoCancel) = vbCancel Then
                            Sheets(Ausgangsblatt).Select             'Dieses Tabellenblatt soll bei Abbruch aufgerufen werden
                            GoTo abbruch
                        End If
                        c.Select
                        If MsgBox("Weitersuchen?", vbQuestion + vbYesNoCancel) = vbNo Then
                            GWeiter = True
                            GoTo ende
                        End If
                    Loop While Not c Is Nothing And secAddress <> firstAddress And c.Address <> firstAddress
                Else
                    GWeiter = True
                    GoTo ende
                End If
            End If
        End With
    Next ws
ende:
    If GFound = False Then
        If MsgBox("Suchwert nicht gefunden! Neue Suche?", vbInformation + vbYesNo) = vbYes Then
            GoTo anf:
        End If
    Else
        If GWeiter = False Then
            If MsgBox("Es wurden alle in Frage kommenden Namen angezeigt! Soll die Suche neu gestartet werden?", vbInformation + vbYesNo) = vbYes Then
                GoTo weiter
            Else
                Sheets(Ausgangsblatt).Select                'Hier funktioniert der Code, das Tabellenblatt wird aufgerufen.
            End If
        End If
    End If
abbruch:
End Sub

 

 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
18.01.2019 08:24:12 megawunk
NotSolved
18.01.2019 14:08:53 losgehts
NotSolved
18.01.2019 14:28:12 Markus
NotSolved
Blau Ereignis nach VB Cancel
18.01.2019 21:20:07 Gast01234
NotSolved
19.01.2019 01:36:47 megawunk
NotSolved
19.01.2019 07:39:09 Gast43210
NotSolved
23.01.2019 07:22:57 megawunk
NotSolved
28.01.2019 01:30:35 Steffen
NotSolved