216 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen,

ich stehe vor folgender Aufgabe:

Ich möchte in einer Datei in Tabellenblatt 2 einen Button erstellen, der Tabellenblatt 3 nach einer Zelle aus Tabellenblatt 2 benennt und in einen bestimmten Ordner speichert.

In der neuen Datei soll also kein Makro enthalten sein oder auftauchen.

Ich bekomme aktuell nur den Button in tabellenblatt 3 zum laufen, aber das will ich ja nicht.

Danke für eure Unterstützung!

5 Antworten

0 Punkte
Beantwortet von beverly_ Experte (3.3k Punkte)

Hi,

z.B. so:

    Dim strPfad As String
    strPfad = "E:\Z_Test\" '<== Pfadname anpassen
    Worksheets(3).Copy
    ActiveWorkbook.SaveAs Filename:=strPfad & ThisWorkbook.Worksheets(2).Range("A1"), FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False

Bis später, Karin

0 Punkte
Beantwortet von
Hallo Karin, vielen Dank!

Ich bin noch Anfänger in dem Bereich, daher hier eine tewas dumme Rückfrage: Ich bekomme eine Fehlermeldung wegen der Zeile "Worksheets(3).Copy"

"Wir konnten dieses Blatt nicht kopieren"

Muss ich hier den Namen des Tabellenblatts eingeben oder erkennt er an der Zahl normalerweise welches Worksheet er speichern soll?

Danke und viele Grüße
0 Punkte
Beantwortet von
nimm 2 anstatt 3. Es geht nämlich bei 0 los.
0 Punkte
Beantwortet von beverly_ Experte (3.3k Punkte)
ausgewählt von mickey
 
Beste Antwort

Zitat: "Es geht nämlich bei 0 los."

Das ist falsch - die Zählung der Worksheets beginnt bei 1 und nicht bei 0.

Es mag zwar funktionieren, wenn du im Code schreibst Worksheets(2).Copy, aber auch nur dann, wenn mindestens ZWEI Blätter vorhanden sind.

Ich war von deiner Beschreigung ausgegangen "Tabellenblatt 3" und hatte angenommen, dass es sich um das 3. Tabellenblatt handelt. Benutze den Namen des Tabellenblattes anstelle des Index:

Worksheets("Tabelle3").Copy

Bis später, Karin

0 Punkte
Beantwortet von
SUPER!! Vielen, vielen Dank Karin!

Jetzt funktioniert es so, wie ich es haben möchte!

Sehr gut! Danke und allen noch einen schönen Tag

Peter
...