Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen

VBA - Tabellenblatt kopieren und Namen eingeben


Betrifft: VBA - Tabellenblatt kopieren und Namen eingeben von: NeubPa
Geschrieben am: 14.10.2016 16:10:05

Hallo,

ich fange gerade an mit VBA zu arbeiten. Ich wollte in einem Excel Dokument über ein Makro das aktuelle Tabellenblatt kopieren und über eine Inputbox den Namen eingeben lassen. Oder einfach eine Kopie des aktuellen mit Durchzählung Bsp. "Name (1)". Irgendwie bekomme ich es nicht. Wenn ich einfach OK klicke ist zwar die Kopie da, aber immer mit Laufzeitfehler 1004 Info. Habt ihr eine Lösung?

Sub Makro1()
    ActiveSheet.Copy After:=Sheets(Sheets.Count)
    Name = InputBox("Name of new Sheet - or click OK to copy")
    ActiveSheet.Name = Name
End Sub
Vielen Dank für eure Hilfe

  

Betrifft: AW: VBA - Tabellenblatt kopieren und Namen eingeben von: Werner
Geschrieben am: 14.10.2016 16:17:27

Hallo,

Sub Makro1()
    Dim strName As String
    ActiveSheet.Copy After:=Sheets(Sheets.Count)
    strName = InputBox("Name of new Sheet - or click OK to copy")
    ActiveSheet.Name = strName
End Sub
Gruß Werner


  

Betrifft: AW: VBA - Tabellenblatt kopieren und Namen eingeben von: NeubPa
Geschrieben am: 14.10.2016 16:31:31

Hallo Werner,

vielen dank für die schnelle Antwort. Leider bekomme ich noch den gleichen Laufzeitfehler, wenn ich einfach OK klicke in der InputBox (um den Namen einfach zu übernehmen anstelle einen einzugeben). Gibt es hierfür eine Lösung? Oder das z.B. in der InputBox direkt der Name des zu kopierenden Reiters mit (count) als Vorschlag angezeigt wird? Ich habe schon alles probiert und komme nicht weiter.

Vielen Dank für die Hilfe!


  

Betrifft: AW: VBA - Tabellenblatt kopieren und Namen eingeben von: NeubPa
Geschrieben am: 14.10.2016 16:32:39

Hier noch die Fehlermeldung.


  

Betrifft: AW: VBA - Tabellenblatt kopieren und Namen eingeben von: Werner
Geschrieben am: 14.10.2016 16:44:00

Hallo,

Sub Makro1()
Dim strName As String
ActiveSheet.Copy After:=Sheets(Sheets.Count)
strName = InputBox("Name of new Sheet - or click OK to copy")
If Not strName = "" Then
    ActiveSheet.Name = strName
Else
    Exit Sub
End If
End Sub
Gruß Werner


  

Betrifft: AW: VBA - Tabellenblatt kopieren und Namen eingeben von: NeubPa
Geschrieben am: 14.10.2016 17:15:29

Vielen Dank! Läuft jetzt super. Danke schön!


  

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T. von: Werner
Geschrieben am: 14.10.2016 17:19:11




Beiträge aus den Excel-Beispielen zum Thema "VBA - Tabellenblatt kopieren und Namen eingeben"