Probleme mit "Such"-Makro
Betrifft: Probleme mit "Such"-Makro
von: Andi
Geschrieben am: 27.08.2004 08:54:27
Hi,
hae ein Problem mit folgendem MAkro:
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. Neues Prüfblattlatt anlegen?", vbYesNo)
If q = vbNo Then Exit Sub
If q = vbYes Then
Call Makro_neues_Blatt_anlegen
End If
Application.ScreenUpdating = True
End Sub
Die Meldung in der MsgBox kommt immer, auch wenn das Blatt existiert...
Kann jemand helfen?
Gruß Andi
Betrifft: AW: Probleme mit "Such"-Makro
von: JensD
Geschrieben am: 27.08.2004 09:10:11
Hi
Das Programm Funktioniert eigenedlich.
Ich hab es noch einwenig umgebaut aber sonst konnte ich keinen Fehler finden.
Sub BlattAuswählen()
Dim q
Dim wks As Worksheet
Dim strWKS As String
Application.ScreenUpdating = False
strWKS = InputBox("Bitte Prüfblattnummer eingeben:")
If strWKS = "" Then Exit Sub
For Each wks In Worksheets
If UCase(wks.Name) = UCase(strWKS) Then
wks.Select
Application.ScreenUpdating = True
Exit Sub
End If
Next wks
q = MsgBox("Blattname existiert nicht. Neues Prüfblattlatt anlegen?", vbYesNo)
If q = vbNo Then Exit Sub
Call Makro_neues_Blatt_anlegen
Application.ScreenUpdating = True
End Sub
Gruß Jens
Betrifft: Probleme mit "Such"-Makro
von: Andi
Geschrieben am: 27.08.2004 09:14:27
Leider kommt immer noch zuerst die Box mit der Abfrage ob ein Blatt angelegt werden soll...
Sie soll aber nicht kommen, wenn das Blatt schon existiert.
Vielleicht kann mir ja noch mal jemand helfen.
Gruß Andi
Betrifft: AW: Probleme mit "Such"-Makro
von: JensD
Geschrieben am: 27.08.2004 09:20:29
Teste doch mal das Programm Schritt für Schritt. F8
Ich hab alles versucht, die Eingabe kann nur nicht stimmten.
Du gibst scheinbar immer einen Namen ein den es nicht gibt.
Sollte sich ein Leerzeichen eingeschlichen haben, dazu hab ich mal noch Trim eingefügt.
Sub BlattAuswählen()
Dim q
Dim wks As Worksheet
Dim strWKS As String
Application.ScreenUpdating = False
strWKS = InputBox("Bitte Prüfblattnummer eingeben:")
If strWKS = "" Then Exit Sub
For Each wks In Worksheets
If Trim(UCase(wks.Name)) = Trim(UCase(strWKS)) Then
wks.Select
Application.ScreenUpdating = True
Exit Sub
End If
Next wks
q = MsgBox("Blattname existiert nicht. Neues Prüfblattlatt anlegen?", vbYesNo)
If q = vbNo Then Exit Sub
Call Makro_neues_Blatt_anlegen
Application.ScreenUpdating = True
End Sub