Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblatt nach Muster erstellen und benennen

Tabellenblatt nach Muster erstellen und benennen
02.04.2019 08:33:37
Matthias
Hallo zusammen,
vielleicht kann mir hier wer bei meinem Anliegen weiterhelfen, ich steh leider ziemlich am Schlauch da ich von VBA doch recht wenig ahnung habe.
Ich würde gerne per Button eine neues Sheet nach Vorlage erstellen (also ein Bereits vorhandenes Sheet kopieren).
Das neue Sheet sollte am besten auch gleich benannt werden, also in Zelle XY steht der Name, dieser soll übernommen werden.
Könnt ihr mir hier weiterhelfen?
In der Suche bin ich leider nicht fündig geworden und weiß nicht wie ich das Problem alleine lösen soll.
Vielen dank und grüße
Matthias
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt nach Muster erstellen und benennen
02.04.2019 08:49:54
Werni
Hallo Matthias
also in Zelle XY steht der Name. Das ist in meinem Code Zelle A1, bitte anpassen!
Sub Blattkopie()
Dim xName As String
Application.DisplayAlerts = False
xName = [A1]
On Error GoTo MELD
Sheets("Tabelle1").Copy After:=Sheets(1)
ActiveSheet.Name = xName
Exit Sub
MELD:
MsgBox "Tabelle " & xName & " existiert schon!"
ActiveSheet.Delete
Application.DisplayAlerts = True
End Sub

Gruss Werni
Anzeige
AW: Tabellenblatt nach Muster erstellen und benennen
02.04.2019 09:40:27
Matthias
Hallo Werni,
super, vielen Dank, danach hab ich gesucht!
Hier wird das neue Sheet ja nach dem ersten sheet (bzw. welchem man will)eingefügt, wie müsste man den Code ändern manit dieses als letztes Eingefügt wird?
Grüße
matthias
AW: Tabellenblatt nach Muster erstellen und benennen
02.04.2019 09:50:09
Matthias
Hallo Werni,
habs selbst geschafft.
Falls es wen interessiert hier die Änderung:
Sheets("Vorlage").Copy After:=Sheets(Worksheets.Count)
Nochmal vielen Dank für die Hilfe!
Grüße
Matthias
Anzeige
AW: Tabellenblatt nach Muster erstellen und benennen
02.04.2019 08:53:44
UweD
hallo
so z.B.
Sub neues_Blatt()
        Dim RNG As Range, NName As String, TB1, TbM
        
        Set TbM = Sheets("Vorlage")
        Set TB1 = ActiveSheet
        Set RNG = TB1.Cells(1, 1) 'Der Name steht in A1 
        
        NName = RNG.Value
        
        If NName <> "" Then
            'prüfen ob Blatt schon existiert 
            If IsError(Evaluate(NName & "!A1")) Then
                
                'Wenn noch nicht da, dann Vorlage ans Ende kopieren 
                TbM.Copy after:=Sheets(Sheets.Count)
                
                With ActiveSheet
                    'Blatt benennen 
                    .Name = NName
                    
                    'Name in A1 
                    .Range("A1") = NName
                End With
                    
            End If
        End If

End Sub

LG UweD
Anzeige
AW: Tabellenblatt nach Muster erstellen und benennen
02.04.2019 09:41:42
Matthias
Hallo UweD,
hab jetzt den Code von Werni genutzt, aber vielen Dank für deine Hilfe!
Grüße
Matthias

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Tabellenblatt nach Vorlage erstellen und benennen


Schritt-für-Schritt-Anleitung

Um ein neues Tabellenblatt in Excel nach einer Vorlage zu erstellen und es automatisch zu benennen, kannst Du den folgenden VBA-Code verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:
Sub Blattkopie()
    Dim xName As String
    Application.DisplayAlerts = False
    xName = [A1] ' Name aus Zelle A1 entnehmen
    On Error GoTo MELD
    Sheets("Vorlage").Copy After:=Sheets(Sheets.Count) ' Vorlage kopieren und am Ende einfügen
    ActiveSheet.Name = xName ' Neues Blatt benennen
    Exit Sub
MELD:
    MsgBox "Tabelle " & xName & " existiert schon!"
    ActiveSheet.Delete
    Application.DisplayAlerts = True
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Erstelle einen Button, um das Makro auszuführen. Klicke dazu auf Entwicklertools und dann auf Einfügen. Wähle einen Button aus und verlinke ihn mit dem Makro Blattkopie.

Häufige Fehler und Lösungen

  • Fehler: "Tabelle existiert schon!"

    • Überprüfe den Namen in Zelle A1. Wenn der Name bereits existiert, wird das neue Blatt nicht erstellt.
  • Makro funktioniert nicht

    • Stelle sicher, dass die Entwicklertools aktiviert sind und Du das Makro richtig verlinkt hast.

Alternative Methoden

Du kannst auch andere Methoden verwenden, um ein neues Blatt aus einer Vorlage zu erstellen:

  1. Manuelles Kopieren: Rechtsklicke auf das Vorlagenblatt und wähle Verschieben oder Kopieren. Setze ein Häkchen bei Kopie erstellen, wähle die Position aus und klicke auf OK.

  2. Excel Makro: Nutze den folgenden Code, um ein neues Blatt automatisch zu erstellen:

Sub neues_Blatt()
    Dim RNG As Range, NName As String
    Set RNG = ActiveSheet.Cells(1, 1) ' Name steht in A1
    NName = RNG.Value
    If NName <> "" Then
        If IsError(Evaluate(NName & "!A1")) Then
            Sheets("Vorlage").Copy After:=Sheets(Sheets.Count)
            ActiveSheet.Name = NName
            ActiveSheet.Range("A1") = NName
        End If
    End If
End Sub

Praktische Beispiele

  • Vorlage für Berichte: Wenn Du regelmäßig Berichte erstellen musst, kannst Du ein Arbeitsblatt erstellen, das als Vorlage dient. Jedes Mal, wenn Du einen neuen Bericht benötigst, führe das Makro aus und das neue Tabelle wird automatisch erstellt und benannt.

  • Gesprächsprotokolle: Erstelle ein Formular als Vorlage für Gesprächsprotokolle. Mit einem Klick auf den Button kannst Du schnell ein neues Protokoll anlegen.


Tipps für Profis

  • Benennung von Blättern automatisieren: Nutze die Funktion Now oder Date in VBA, um jedem neuen Blatt ein Datum oder einen Zeitstempel hinzuzufügen.

  • Error-Handling verbessern: Implementiere umfassendere Fehlerüberprüfungen, um sicherzustellen, dass der Benutzer über alle potenziellen Probleme informiert wird.

  • VBA-Module organisieren: Halte Deine VBA-Module sauber und gut strukturiert, um die Wartbarkeit zu verbessern.


FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um eine andere Vorlage zu verwenden?
Ändere einfach den Namen in der Zeile Sheets("Vorlage").Copy zu dem Namen des gewünschten Vorlagenblattes.

2. Kann ich das Makro auch ohne VBA verwenden?
Ja, Du kannst ein neues Blatt manuell kopieren und benennen, aber VBA bietet eine schnellere und effizientere Methode, vor allem wenn Du oft neue Blätter erstellen musst.

3. Funktioniert dieser Code in allen Excel-Versionen?
Der Code sollte in den meisten modernen Excel-Versionen (ab Excel 2010) funktionieren, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige