Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1716to1720
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 - Prüfung

Tabellenblatt kopieren - Prüfung
16.10.2019 16:06:34
Thomas
Hallo zusammen,
folgenden Code verwende ich für das Kopieren eines Tabellenblattes:

Sub BlattKopieren()
Dim NeuerName As String
Dim i As Integer
NeuerName = InputBox("Bitte gebe den neuen Namen des Blattes ein!")
i = Sheets.Count
Sheets("Vorlage").Copy After:=Sheets(i)
ActiveSheet.Name = NeuerName
End Sub

Ich bräuchte etwas Hilfe bei folgenden drei Hürden, da ich mich mit VBA nicht so gut auskenne:
1. Bei der Abfrage nach dem neuen Namen wird trotzdem ein Tabellenblatt erzeugt, auch wenn ich auf "Abbrechen" oder das "X" oben in der Ecke der Meldung klicke.
2. Der Name des neuen Tabellenblatts, den man ja vor dem Kopieren im Meldefeld eingeben kann, soll bereits einen Vorschlag beinhalten. Bspw: "Monat 1"
Ich hatte es mit "Select Case" versucht, leider hat das nicht geklappt.
3. Es sollte überprüft werden, ob der Name bereits so 1:1 vorhanden ist und somit das Kopieren verhindert wird.
Ich wäre Euch super dankbar, wenn das alles umsetzbar wäre!! :)
Beste Grüße
Thomas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt kopieren - Prüfung
16.10.2019 16:25:00
fcs
Hallo Thomas,
die erforderlichen Prüfungen könnte man wie folgt einbauen:
Sub BlattKopieren()
Dim NeuerName As String
Dim objSh As Object
Dim i As Integer
On Error GoTo Fehler
NeuerName = InputBox("Bitte gebe den neuen Namen des Blattes ein!", _
"Neues Blatt anlegen", Default:="Monat 1")
If NeuerName  "" Then
Set objSh = ActiveWorkbook.Sheets(NeuerName)
MsgBox "Ein Blatt mit dem Namen """ & NeuerName & """ ist schon vorhanden"
GoTo Fehler
MakeSheet:
i = Sheets.Count
Sheets("Vorlage").Copy After:=Sheets(i)
ActiveSheet.Name = NeuerName
End If
Fehler:
With Err
Select Case .Number
Case 0 'alles ok
Case 9
Resume MakeSheet
End Select
End With
End Sub
LG
Franz
Anzeige
AW: Tabellenblatt kopieren - Prüfung
17.10.2019 09:04:24
Thomas
Hallo Franz,
besten Dank, funktioniert einwandfrei!
Dankeschön!
Gruß
Thomas

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige