Sehr merkwürdig...HIDE geht nicht mehr!!!

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Sehr merkwürdig...HIDE geht nicht mehr!!!
von: Martin Halberstadt
Geschrieben am: 30.09.2003 14:55:24

Hallo liebe Forumsbesucher,

ich habe ein merkwürdiges Problem.

Und zwar habe ich in einer Excel-Datei eine UserForm mit drei CommandButtons.
Button1 verlässt die UserForm, Button2 setzt alle Werte in ListBoxes, ComboBoxes usw. zurück auf Null bzw. löscht die Inhalte und Button3 öffnet eine InputBox.

Die UserForm starte ich per CommandButton auf meiner Excel-Oberfläche.

Mein Problem ist nun folgendes:

Wenn ich die Datei öffne, die UserForm starte und Button3 anklicke, dann verschwindet die UserForm und die InputBox erscheint. Dies stimmt mich glücklich, denn so will ich es haben. Traurig stimmt es mich aber, wenn ich erst einen der anderen Buttons drücke und DANN Button3. Dann erscheint zwar die InputBox, aber die UserForm verschwindet nicht. So soll es natürlich nicht sein.

Alle TakeFocusOnClicks stehen auf "False"!
Im Quellcode von Button3 steht auch am Anfang "UserForm.Hide".
Gewöhnlich funzt es, jedoch nicht, sobald ich vorher etwas anderes anklicke.

Ich wäre Euch sehr dankbar, wenn Ihr mir bei meinem Problem helfen könntet.

Vielen Dank im voraus.

MfG,
Martin Halberstadt

Bild


Betrifft: AW: Sehr merkwürdig...HIDE geht nicht mehr!!!
von: Carsten
Geschrieben am: 30.09.2003 15:02:19

Hallo Martin,

poste doch mal den Code.

Gruß
Carsten


Bild


Betrifft: Hier ist der Code!!!
von: Martin Halberstadt
Geschrieben am: 30.09.2003 15:05:43

Hi Carsten,

hier ist der Code. Ich hoffe der trägt zur Lösung des Problems bei.

Code:


Private Sub cmdUserSchnellsuche_Click()
    Suchmaske.cmdUserSchnellsuche.TakeFocusOnClick = False
    Suchmaske.cmdUserNeueSuche.TakeFocusOnClick = False
    Suchmaske.Hide
    Dim wks As Worksheet
    Dim rng As Range
    Dim sAddress As String, sUserSchnellsuche As String
    sUserSchnellsuche = InputBox("Bitte Namen/Suchbegriff eingeben:", "Schnellsuche")
    If sUserSchnellsuche = "" Then
    Suchmaske.Show
    Exit Sub
    End If
    For Each wks In Worksheets
    Sheets("Tabelle2").Select
    Set rng = wks.Cells.Find(what:=sUserSchnellsuche, lookat:=xlWhole, LookIn:=xlFormulas, SearchOrder:=xlByColumns)
         If Not rng Is Nothing Then
            sAddress = rng.Address
            Do
               Application.Goto rng, False
               If MsgBox(prompt:="Weiter suchen?", Buttons:=vbYesNo + vbQuestion) = vbNo Then
               Tabelle1.Activate
               Suchmaske.Show
               Exit Sub
               End If
               Set rng = wks.Cells.FindNext(After:=ActiveCell)
               If rng.Address = sAddress Then Exit Do
            Loop
        End If
    Next wks
    MsgBox prompt:="Die Schnellsuche konnte keine bzw. keine weiteren übereinstimmenden Daten finden. Bitte überprüfen Sie Ihre Eingabe auf eventuelle Rechtschreibfehler und versuchen Sie es erneut."
    Tabelle1.Activate
    Suchmaske.Show
End Sub


Gruß, Martin Halberstadt


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Fehler 400 bei FormulaLocal"