Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblatt kopieren mit VBA

Tabellenblatt kopieren mit VBA
10.05.2005 11:38:24
toni
Hallo Forum,
könnte mir mal wieder einer helfen. Ich suche einen Code, der mir komfortabel durch auslösen das aktive Tabellenblatt kopiert, links auf dem Blattregister neben die vorhandenen Tabellenblätter setzt und über eine MsgMox abfragt, wie denn das neue Tabellenblatt heißen soll.
Leider kann ich dat net, könnte mir vielleicht jemand mit einem VBA’chen helfen?
Viele Grüße
Toni
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt kopieren mit VBA
10.05.2005 11:44:07
Kl@us-M.
Hi Toni,
probier's mal so:

Sub NeuesTabBlatt()
Dim NewName As String
ActiveSheet.Copy Before:=ActiveSheet
NewName = InputBox("Geben Sie einen Tabellenblattnamen ein")
ActiveSheet.Name = NewName
End Sub

Gruss aus dem wilden Hunsrück
Klaus-Martin

Anzeige
AW: Tabellenblatt kopieren mit VBA
10.05.2005 11:44:41
Rene
Hi, versuchs mal damit:

Sub Makro3()
ActiveSheet.Move Before:=Sheets(1)
Name = InputBox("Wie soll das blatt  heissen?")
ActiveSheet.Name = Name
End Sub

bitte Rückemeldung
AW: Tabellenblatt kopieren mit VBA
10.05.2005 12:14:39
Toni
Priiiiima ihr beiden und vielen Dank. Nun komme ich weiter.
Ich wünsche Euch noch eine schöne Woche und weiterhin viel Erfolg.
Grüße aus Hamburg von Toni
Anzeige
;

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
Anzeige

Infobox / Tutorial

Tabellenblatt kopieren mit VBA


Schritt-für-Schritt-Anleitung

Um ein Excel-Tabellenblatt mit VBA zu kopieren, kannst Du den folgenden Code verwenden. Dieser Code fragt den Namen des neuen Blattes ab und platziert das kopierte Blatt links neben dem aktiven Blatt.

Sub NeuesTabBlatt()
    Dim NewName As String
    ActiveSheet.Copy Before:=ActiveSheet
    NewName = InputBox("Geben Sie einen Tabellenblattnamen ein")
    ActiveSheet.Name = NewName
End Sub

Um das Makro auszuführen, öffne den VBA-Editor (Alt + F11), füge ein neues Modul hinzu und kopiere den Code hinein. Drücke F5, um das Makro auszuführen.


Häufige Fehler und Lösungen

  1. Fehler: "Der Name ist ungültig"

    • Dieser Fehler tritt auf, wenn der eingegebene Tabellenblattname bereits existiert. Stelle sicher, dass der neue Name einzigartig ist.
  2. Fehler: "Das Blatt kann nicht kopiert werden"

    • Überprüfe, ob das aktive Blatt geschützt ist. Du musst den Schutz aufheben, bevor Du es kopieren kannst.
  3. Fehler: "Excel kann den Namen nicht ändern"

    • Wenn der Name des neuen Blattes ungültige Zeichen enthält (z.B. /, \, ?, *, [ oder ]), wird dieser Fehler angezeigt. Verwende nur erlaubte Zeichen.

Alternative Methoden

Neben dem oben genannten VBA-Code kannst Du auch andere Methoden ausprobieren, um ein Tabellenblatt zu kopieren:

  • Excel Makro für mehrere Tabellenblätter kopieren:

    Sub MehrereTabellenblätterKopieren()
      Dim Blatt As Worksheet
      For Each Blatt In ThisWorkbook.Worksheets
          Blatt.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
      Next Blatt
    End Sub
  • Manuelles Kopieren: Du kannst auch mit der rechten Maustaste auf das Tabellenblatt klicken und "Kopieren" wählen, um das Blatt manuell zu duplizieren.


Praktische Beispiele

Hier sind zwei praktische Beispiele, wie Du das Kopieren von Tabellenblättern in Excel VBA umsetzen kannst:

  1. Kopieren und Umbenennen mit Eingabeaufforderung:

    • Verwende den oben genannten Code, um ein Blatt zu kopieren und einen Namen anzugeben.
  2. Kopieren eines Blattes an einen bestimmten Ort:

    Sub BlattKopierenNachUnten()
       ActiveSheet.Copy After:=ActiveSheet
       ActiveSheet.Name = "Kopie von " & ActiveSheet.Name
    End Sub

Tipps für Profis

  • VBA-Blatt kopieren und einfügen: Wenn Du mit großen Datenmengen arbeitest, kannst Du die Funktion Range.Copy verwenden, um nur gefilterte Daten zu kopieren.

  • Excel VBA Arbeitsblatt kopieren und einfügen: Achte darauf, dass Du beim Einfügen von Daten die richtigen Formate beibehältst, um Datenverlust zu vermeiden.

  • Sichere die Arbeitsmappe: Bevor Du umfangreiche Änderungen vornimmst, erstelle eine Sicherungskopie Deiner Excel-Datei.


FAQ: Häufige Fragen

1. Frage: Welche Excel-Version wird benötigt? Antwort: Die vorgestellten VBA-Codes funktionieren in Excel 2010 und späteren Versionen.

2. Frage: Kann ich ein kopiertes Blatt automatisch in eine andere Arbeitsmappe verschieben? Antwort: Ja, Du kannst den Copy-Befehl anpassen, um das Blatt in eine andere Arbeitsmappe zu kopieren, indem Du den Namen der Zielarbeitsmappe angibst.

3. Frage: Wie kann ich mehrere Tabellenblätter auf einmal kopieren? Antwort: Du kannst eine Schleife verwenden, um durch alle gewünschten Blätter zu iterieren und sie mit dem entsprechenden VBA-Befehl zu kopieren.

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