den folgenden Code hätte ich gern so geändert, dass dieser nicht in Zelle A1 beginnt, sondern in Zelle B4. Da ich es selber nicht hin bekomme, wäre ich für Eure Hilfe sehr dankbar.
Dann hätte ich vielleicht noch eine kleine Änderung/Ergänzung: Und zwar sollen die Tabellenblätter anhand der Namen ab Zelle B4 angelegt werden. Wenn jetzt angenommen in Zelle B12 ein Name beginnend mit dem A da ist, so solklter dann auch das Tabellenblatt direkt vorne sortiert eingefügt werden.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
On Error GoTo Fehler
Dim ws As Worksheet, Blatt As String, zei As Long, vorh As Boolean
Blatt = ActiveSheet.Name
If Range("A65536").End(xlUp).Row = 1 And Range("A1") = "" Then Exit Sub
For zei = 1 To Range("A65536").End(xlUp).Row
vorh = False
For Each ws In ThisWorkbook.Worksheets
If ws.Name = Cells(zei, 1) Then vorh = True
Next ws
If vorh = False Then
Worksheets.Add
ActiveSheet.Name = Cells(zei, 1)
End If
Next zei
Worksheets(Blatt).Activate
Exit Sub
Fehler:
MsgBox "Fehler aufgetreten, ist im Namen ein nicht zugelassenes Zeichen?" & Chr(13) & "ansonsten unbek. Fehler"
Application.EnableEvents = True
Worksheets(Blatt).Activate
End Sub
Für Eure Hilfe im voraus herzlichen Dank.
Micha