Tabellenblatt Kopieren und mit Namen versehen
#1
Hallo,
ich möchte per Button das Tabellenblatt „ Vorlage Datenblatt“ auf dem ich gerade Arbeite kopieren und an das Ende gestellt werden.
Das neue Blatt soll dann den Namen aus der Zelle C7 von „ Vorlage Datenblatt „ bekommen.
Das soll mit einem Button in der Vorlage Datenblatt geschehen
Ich habe es schon per Recorder versucht und die Suche in den Foren bemüht aber beides war nicht so wirklich erfolgreich.
Vielleicht fehlt mir auch nur passende Suchbegriff.
Meine VBA Kenntnisse reichen soweit, das ich kleinere oder mittelgroße Anpassungen vornehmen kann, aber selbst was erstellen sind böhmische Dörfer für mich.
Das mit dem Kopieren und einfügen hat schon funktioniert aber der Name aus C 7 macht mir Probleme
Ich hoffe kann mir jemand helfen.
 




.xlsm   Auszählung Neues Tabellenblatt.xlsm (Größe: 71,79 KB / Downloads: 2)
Beste Grüße
Thomas
Top
#2
Hallo Thomas,

so sollte es gehen.

Sub Neues_Blatt()
' Neues_Blatt Makro
'
    Sheets("Vorlage Datenblatt").Copy Before:=Sheets(3)
    ActiveSheet.Name = Range("C7").Value

End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Beim Kopieren wird das eingefügte Blatt immer das aktive Blatt, deswegen kannst Du es über ActiveSheet.Name benennen.

Gruß
Ich

Und wenn die Kopie tatsächlich ans Ende soll dann so:

Sub Neues_Blatt()
' Neues_Blatt Makro
'
    Sheets("Vorlage Datenblatt").Copy After:=Worksheets(Worksheets.Count)
    ActiveSheet.Name = Range("C7").Value

End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Das hatte ich zunächst überlesen.
[-] Folgende(r) 1 Nutzer sagt Danke an IchBinIch für diesen Beitrag:
  • knallebumm
Top
#3
Hallo Ich,
Danke dafür.

Habe den Code noch etwas angepasst, mit Teilen von anderen Codes
Jetzt läuft es so wie ich mir das Vorstelle

Code:
Sub Neues_Blatt()
' Neues_Blatt Makro
'
   Sheets("Vorlage").Unprotect "holz"
   Sheets("Vorlage").Copy Before:=Sheets(4)
   ActiveSheet.Name = Range("C7").Value
   ActiveSheet.Shapes.Range(Array("Button 1")).Select
   Selection.Delete
   Selection.Cut
   Sheets(4).Protect "holz"
   Sheets("Vorlage").Select
   ActiveSheet.Protect "holz"
   Application.ScreenUpdating = True
 

End Sub
Beste Grüße
Thomas
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste