Ich habe versucht, ein Makro zum Erstellen von Arbeitsblättern zu erstellen. Der Code sollte Folgendes tun:Excel: VBA erstellen Arbeitsblätter ohne Duplikate
1) Erstellen Sie Arbeitsblätter für ColumnB von Master-Blatt, mit Vorlage aus "Vorlage" Arbeitsblatt.
2) Der Bereich von ColumnB in Master Sheet ist variabel, aber dies ist mein erster Versuch mit Excel-VBA, und ich weiß nicht, wie man einen variablen Bereich einstellt.
3) Benennen Sie jedes Arbeitsblatt nach dem Namen in jeder Zelle in columnB
3.1) columnB hat doppelte Einträge, aber wir brauchen nur ein Arbeitsblatt für doppelte Zellen erstellen. (Löschen von Duplikaten ist keine Option)
4) Verknüpfen Sie die Arbeitsblätter mit den Zellen in Spalte B des Master-Arbeitsblatts.
Ich habe Probleme mit dem oben erwähnten Punkt 3.1. Unten ist das nächste, was ich am nützlichsten fand: Können wir es nach meinen Anforderungen verfeinern?
Sub CreateAndNameWorksheets()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Sheets("Master").Range("B5:B25000")
Sheets("Template").Copy After:=Sheets(Sheets.Count)
With c
ActiveSheet.Name = .Value
.Parent.Hyperlinks.Add Anchor:=c, Address:="", SubAddress:= _
"'" & .Text & "'!A1", TextToDisplay:=.Text
End With
Next c
Application.ScreenUpdating = True
End Sub
Vielen Dank!
Die [SheetExists] zu testen (http : //stackoverflow.com/questions/6688131/test-or-check-if-sheet-exists) Funktion in dieser Antwort wird helfen. Also, testen Sie zuerst ob Blatt und wenn ja, gehen Sie weiter zur nächsten Zelle. –
Oh, Okay, werde ich versuchen. –