Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1040to1044
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Tabellenblatt kopieren einfügen Namen ändern

Tabellenblatt kopieren einfügen Namen ändern
23.01.2009 10:59:19
Lucia
Einen wunderschönen letzten Arbeitstagen zusammen:-)
Folgender Sachverhalt:
In einer Arbeitsmappe werden Auswertungen gemacht. Dazu gibt es das "Controllingblatt", dass an vorletzter Stelle steht, und ein "vorlage"-blatt, welches kopiert werden muss, vor das Controllingblatt eingefügt werden muss und mit Namen "Potenzial - Nr" benannt werden muss.
Von vorne her hat man dann also angefangen mit Potenzial 1 die zig Potenzialblätter, dann Controlling, dann Vorlageblatt.
Mit einem Makro möchte ich jetzt, dass das kopieren der Vorlage + Benennen mit "Potenzial & nächste noch nicht vergebene Nummer" sowie aufsteigendes Sortieren der Tabellenblätter bis zum Blatt "Controlling" automatisch funktioniert;-)
Das wär toll...bekommen wir das hin?
Danke,
Lucia

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt kopieren einfügen Namen ändern
23.01.2009 11:07:57
Ramses
Hallo
Probier mal
Sub Create_wks()
    Worksheets("Vorlage").Copy before:=Worksheets("Controlling")
    ActiveSheet.Name = "Potenzial " & Worksheets.Count - 2
End Sub

Gruss Rainer
Anzeige
supi
23.01.2009 11:15:00
Lucia
Hi Rainer,
kurz und knackig und funktioniert sofort!!prima!!
AW: Tabellenblatt kopieren einfügen Namen ändern
23.01.2009 11:36:00
fcs
Hallo Lucia,
die folgende Prozedur erledigt die gewünschten Aktionen
Gruß
Franz

Sub PotenzialNeu()
'Vorlagenblatt kopieren, einfügen und umbenennen mit fortlaufender Nr.
Dim wbAktiv As Workbook
Dim wks As Worksheet
Dim intNrName As Integer
Dim strKopieNeu As String
Const strKopie As String = "Potenzial " 'Startext für Name Blatt-Kopie
Const strVorlage As String = "Vorlage" 'Name des Vorlageblattes
Const varEinfuegeBlatt As Variant = "Controlling" 'Name oder Nummer des Blatts vor _
dem eingefügt werden soll
Const strFormat As String = "0" 'Format für Zählziffer bei Namen
On Error GoTo Fehler
Set wbAktiv = ActiveWorkbook
'Nummer des Neuen Namens ermitteln
'Es wird die höchste Zählnummer der Namen ermittelt, die mit dem Kopie-Namen beginnnen
For Each wks In wbAktiv.Worksheets
With Application.WorksheetFunction
If LCase(Left(wks.Name, Len(strKopie))) = LCase(strKopie) Then
If IsNumeric(Mid(wks.Name, Len(strKopie) + 1)) Then
intNrName = .Max(intNrName, CLng(Mid(wks.Name, Len(strKopie) + 1)))
End If
End If
End With
Next
'Neuen Namen ermitteln
strKopieNeu = strKopie & Format(intNrName + 1, strFormat)
'Neues Blatt anlegen und Name zuweisen
wbAktiv.Worksheets(strVorlage).Copy before:=wbAktiv.Worksheets(varEinfuegeBlatt)
ActiveSheet.Name = strKopieNeu
Fehler:
With Err
If .Number  0 Then
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End If
End With
End Sub


Anzeige
AW: Tabellenblatt kopieren einfügen Namen ändern
23.01.2009 15:48:44
Lucia
Hallo Franz,
Vielen Dank auch für deinen Vorschlag!Ich habs jetzt mal damit gemacht:

Sub Create_wks()
Worksheets("Vorlage").Copy before:=Worksheets("Controlling")
ActiveSheet.Name = "Potenzial " & Worksheets.Count - 2
End Sub


und es hat sehr gut funktioniert. Werde deine Lösung aber im Hinterstübchen behalten, sollten Probleme auftauchen:-)
Schönes Wochenende,
Lucia

150 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige