AW: Funktion für Abbrechen in InputBox
27.04.2005 21:30:33
Christoph
Hi Werner,
du hast mich nicht ignoriert, ich bin ja erst später dazu gekommen.
Wobei Bert absolut recht hat, denn auch mein letzter Code war nur ein Schnellschuss aus der Hüfte...
Um die Stringlänge und sonstige Falscheingaben (Sonderzeichen, etc.) abzufangen, muss dann wirklich noch ein Error-Händler her.
ergo hier mein nächster Ansatz (@Bert: hab ich noch was vergessen?)
Option Explicit
Sub Neu()
Dim strSh As String
Dim arrSh() As String
Dim i As Integer
Dim vgl As Variant
With ThisWorkbook
ReDim arrSh(.Sheets.Count - 1)
For i = 1 To .Sheets.Count
arrSh(i - 1) = .Sheets(i).Name
Next
strSh = InputBox("Legen Sie Namen fest")
If strSh = "" Then Exit Sub
vgl = Application.Match(strSh, arrSh, 0)
If Not IsError(vgl) Then
MsgBox "Name ist schon vergeben", 48
Exit Sub
End If
On Error GoTo ErrorHandler
.Sheets("Tabelle1").Copy After:=.Sheets(.Sheets.Count)
.Sheets(.Sheets.Count).Name = strSh
End With
Exit Sub
ErrorHandler:
Application.DisplayAlerts = False
With ThisWorkbook
.Sheets(.Sheets.Count).Delete
MsgBox "ungültige Eingabe!", 16
End With
Application.DisplayAlerts = True
End Sub
Gruß
Christoph