Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA neue Tabs erstellen benennen
05.05.2023 14:15:55
Björn

Hallo halli,

Ich möchte aus einer Liste neue Tabs erzeugen und benennen. Es scheitert gerade an dem Auslesen des Namens ab dem zweiten Listeneintrag.


Sub LKZ_Vorlage()
Dim wsVorlage_LKZ As Worksheet
Dim wsTop30 As Worksheet
Dim Lieferer As String
Dim i As Integer
Dim n As Long

Set wsVorlage_LKZ = Sheets("LKZ-Vorlage")
Set wsTop30 = Sheets("Tabelle1")

ActiveSheet.Range("C8:C11").Select
n = ActiveCell.Row

For i = 1 To n
Lieferer = wsTop30.Cells(n, 3).Text
wsVorlage_LKZ.Copy after:=wsVorlage_LKZ

ActiveSheet.Name = Lieferer
n = n + 1

Next i


End Sub


https://www.herber.de/bbs/user/159063.xlsm

Vielen Dank

Björn

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA neue Tabs erstellen benennen
05.05.2023 14:34:09
Heli
Hi,

in Deinem Code widersprichst Du Dir leider mehrfach - Der Bereich mit den Bezeichnungen ist C8:C11 - mit Deinem Zähler n startest Du dann aber bei 1 usw.

Teste mal diesen Code:
Sub LKZ_Vorlage()
Dim wsVorlage_LKZ As Worksheet
Dim wsTop30 As Worksheet
Dim Lieferer As String
Dim i As Integer

Set wsVorlage_LKZ = Sheets("LKZ-Vorlage")
Set wsTop30 = Sheets("Tabelle1")

For i = 8 To 11
    Lieferer = wsTop30.Cells(n, 3).Text
    wsVorlage_LKZ.Copy after:=wsVorlage_LKZ

    ActiveSheet.Name = Lieferer
Next i

End Sub
Wenn das flexibel sein soll musst Du die erste Zeile in eine Variable schreiben und danach dann auf die korrekte Zeile referenzieren sowas wie

n = ActiveCell.row (sofern Du in der gerade aktiven Zelle starten willst)

Und dann For i = n to 11 (oder eben auch noch das Ende ermitteln und in eine Variable schreiben)

VG, Heli


Anzeige
AW: VBA neue Tabs erstellen benennen
05.05.2023 14:38:15
onur
For i = 8 To 11
Lieferer = wsTop30.Cells(n, 3).Text
mact 4x das Selbe !
Wozu wir das i gebraucht, wenn du in der Schleife n benutzt ?


AW: VBA neue Tabs erstellen benennen
05.05.2023 14:42:38
Heli
Oh man, wird Zeit für's Wochenende...

Ja die Schleifen des Fragestellers passen irgendwie nicht, hab nicht genau genug geschaut...

Ohne den Sinn zu hinterfragen könnte man das Quick & Dirty so machen
Sub LKZ_Vorlage()
Dim wsVorlage_LKZ As Worksheet
Dim wsTop30 As Worksheet
Dim Lieferer As String
Dim i As Integer

Set wsVorlage_LKZ = Sheets("LKZ-Vorlage")
Set wsTop30 = Sheets("Tabelle1")

For i = 8 To 11
    Lieferer = wsTop30.Cells(i, 3).Text
    wsVorlage_LKZ.Copy after:=wsVorlage_LKZ

    ActiveSheet.Name = Lieferer
Next i

End Sub
Ungetestet!

VG, Heli


Anzeige
AW: VBA neue Tabs erstellen benennen
05.05.2023 14:44:42
onur
"den Sinn zu hinterfragen" ist ein ganz anderes Thema.... :))


AW: VBA neue Tabs erstellen benennen
05.05.2023 15:29:39
Björn
Vielen Dank für eure Hilfe. Das ganze ist natürlich nur proof of Concept, die richtige Liste hat knapp hundert Einträge und die Tabs werden dann befüllt.


Anzeige
AW: VBA neue Tabs erstellen benennen
05.05.2023 14:35:37
onur
Was ist das für eine seltsame Schleife?
For i = 1 To n
und
n = n + 1
????


AW: VBA neue Tabs erstellen benennen
05.05.2023 14:40:06
Yal
Hallo Björn,

versuche folgendes

Sub LKZ_Vorlage()
Dim Z As Range

    For Each Z In Sheets("Tabelle1").Range("C8:C11")
        Worksheets("LKZ-Vorlage").Copy After:=Worksheets(Worksheets.Count)
        ActiveSheet.Name = Z.Value
    Next
End Sub
VG
Yal


Anzeige
AW: VBA neue Tabs erstellen benennen
05.05.2023 14:40:37
Pappawinni
Du erhöhst mit jedem Durchlauf der Schleife n,
Das wird doch Endlos

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige