Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Abfrage in Makro einbauen

Betrifft: Abfrage in Makro einbauen von: Andi
Geschrieben am: 23.08.2004 14:54:43

Hi,

würde gerne in folgendes Makro eine Abfrage(msgbox reicht), wenn das Blatt nicht in der Mappe existiert, einbauen:

'Tabellenblatt suchen

Sub BlattAuswählen()
Application.ScreenUpdating = False
On Error Resume Next
Dim wks As Worksheet
Dim strWKS As String
strWKS = InputBox("Bitte Prüfblattnummer eingeben:")
For Each wks In Worksheets
    If strWKS = "" Then Exit Sub
        If InStr(UCase(wks.Name), UCase(strWKS)) > 0 Then
        'wks.Visible = True
        wks.Select
        Exit Sub
        End If
Next wks
Application.ScreenUpdating = True
End Sub


Habe schon alles mögliche probiert, komme aber nicht weiter.

Kann mir jemand helfen?

Gruß Andi
  


Betrifft: AW: Abfrage in Makro einbauen von: WernerB.
Geschrieben am: 23.08.2004 15:27:06

Hallo Andi,

wie gefällt Dir das?
Sub BlattAuswählen()
Dim strWKS As String
Dim i As Integer
Dim vorh As Boolean
    Application.ScreenUpdating = False
    strWKS = InputBox("Bitte Prüfblattnummer eingeben:")
    If strWKS = "" Then Exit Sub
    For i = 1 To Sheets.Count
      If Sheets(i).Name = strWKS Then
        vorh = True
        Exit For
      End If
    Next i
    If vorh = True Then
      MsgBox "Blatt '" & strWKS & "' existiert !"
      With Sheets(strWKS)
        .Visible = True
        .Select
      End With
    Else
      MsgBox "Blatt '" & strWKS & "' existiert nicht !"
    End If
    Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !


  


Betrifft: AW: Abfrage in Makro einbauen von: Ingo
Geschrieben am: 23.08.2004 15:40:26

Hier ein Beispiel für die Frage, ob bei nichtexistenz des Blattes ein neuer Wert eingegeben werden soll:
Sub BlattAuswählen()
Dim q
Application.ScreenUpdating = False
On Error Resume Next
Dim wks As Worksheet
Dim strWKS As String
neuerversuch:
strWKS = InputBox("Bitte Prüfblattnummer eingeben:")
For Each wks In Worksheets
    If strWKS = "" Then Exit Sub
        If InStr(UCase(wks.Name), UCase(strWKS)) > 0 Then
        wks.Select
        Exit Sub
        End If
Next wks
q = MsgBox("Blattname existiert nicht.Neue Eingabe?", vbQuestion + vbYesNo)
If q = vbNo Then Exit Sub
If q = vbYes Then GoTo neuerversuch
Application.ScreenUpdating = True
End Sub


m f G
Ingo Christiansen


  


Betrifft: AW: Abfrage in Makro einbauen von: Andi
Geschrieben am: 24.08.2004 06:29:03

Danke für die Antworten. Hat mir geholfen!


 

Beiträge aus den Excel-Beispielen zum Thema "Abfrage in Makro einbauen"