Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Blatt kopieren
zurück: Zellen zählen mit Zählenwenn weiter: Datenbank hervorrufen für eine Rechnungsvorlage Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Bitte Status wählen ! Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Noby
Gast


Verfasst am:
15. Aug 2005, 11:59
Rufname:

Blatt kopieren - Blatt kopieren

Nach oben
       

Hallo Forum.

Ich möchte mittels Makro ein Tabellenblatt kopieren, das klappt soweit auch ganz gut. Das neue Blatt soll durch eine Inputbox benannt werden.
Das klappt auch, aber wenn ich einen schon vorhanden Namen eingebe, dann bricht das Makro ab.

Ich benutze dafür folgenden Code:

Public Sub Datenblatt_einfügen()

Dim X As Object
Dim neu$, mldg$, title$
Dim ergebnis%, stil%


neu = InputBox("Bitte den Namen des neuen Datenblattes eingeben:")
For Each X In ActiveWorkbook.Sheets
If X.Name = neu Then
mldg = "Blattname bereits vergeben!"
stil = vbCritical + vbOKOnly
title = "Achtung!"
ergebnis = MsgBox(mldg, stil, title)
Exit Sub
End If
Next X
Worksheets("Vorlage_2").Copy after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = neu
Range("a1").Select
End Sub


Wäre nennt wenn ihr mir helfen könnt
ae
Mein Name ist Ente


Verfasst am:
15. Aug 2005, 12:17
Rufname: Andreas
Wohnort: Reppenstedt bei Lüneburg


AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Hallo,
das ist soweit ja auch ok - denn es kann nur ein Blatt mit diesem Namen geben -
was soll denn konkret passieren ?

_________________
Gruß
Andreas E
------
Oh Mann, ich fühl mich heute wie =DATEDIF(DATUM(1961;6;12);HEUTE();"y") Jahre alt
noby
Gast


Verfasst am:
15. Aug 2005, 12:33
Rufname:

AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Wenn ich jetzt zum Beispiel ein Tabellennamen eingebe, der schon vergeben ist, endet das Makro so wie es jetzt ist.
Es soll aber, wieder das Fenster kommen, wo man den Namen eingeben kann.
Die Inputbox soll also so lange wieder kommen, bis man entweder auf abbrechen klickt, oder einen gültigen namen eingbibt.

Was mir auch gerade aufgefallen ist, ist wenn ich bei der Inputbox auf Abbrechen klicke kommt eine Fehlermeldung: (Laufzeitfehler 1004 - Anwendungs- oder objektdefinierter Fehler)
ae
Mein Name ist Ente


Verfasst am:
15. Aug 2005, 12:43
Rufname: Andreas
Wohnort: Reppenstedt bei Lüneburg

AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Hallo,
versuchs mal so:

Code:
Public Sub Datenblatt_einfügen()

Dim X As Worksheet
Dim neu$, mldg$, title$
Dim ergebnis%, stil%
On Error GoTo fehlerhandler
fehler:
neu = InputBox("Bitte den Namen des neuen Datenblattes eingeben:")
For Each X In ActiveWorkbook.Sheets
If X.Name = neu Then
mldg = "Blattname bereits vergeben!"
stil = vbCritical + vbOKOnly
title = "Achtung!"
ergebnis = MsgBox(mldg, stil, title)
GoTo fehler
Exit Sub
End If
Next X
Worksheets("Tabelle1").Copy after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = neu
Range("a1").Select
Exit Sub
fehlerhandler:
MsgBox ("Das war wohl nix!")
End Sub

_________________
Gruß
Andreas E
------
Oh Mann, ich fühl mich heute wie =DATEDIF(DATUM(1961;6;12);HEUTE();"y") Jahre alt
noby
Office-Kenner (kaum VBA)


Verfasst am:
15. Aug 2005, 13:11
Rufname:

AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Das klappt schon mal ganz gut. Danke

Da hätte ich nur noch eine kleine Frage/Bitte:

Wenn ich auf abbrechen klicke, dann erstellt er mir trotzdem ein neues Blatt. Kann ich das auch irgendwie verhindern?

Gruß
Nils
Kuwe
Excel-Anwender mit VBA


Verfasst am:
15. Aug 2005, 13:37
Rufname: Uwe

AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Hallo,

so sollte es gehen:

Code:
Public Sub Datenblatt_einfügen()
  Dim X As Worksheet
  Dim neu$, mldg$, title$, stil%
  mldg = "Blattname bereits vergeben!"
  stil = vbCritical + vbOKOnly
  title = "Achtung!"
  Do
    neu = InputBox("Bitte den Namen des neuen Datenblattes eingeben:")
    If StrPtr(neu) = 0 Then Exit Sub
    For Each X In ActiveWorkbook.Sheets
      If X.Name = neu Then
        MsgBox mldg, stil, title
        neu = ""
        Exit For
      End If
    Next X
  Loop While neu = ""
  Worksheets("Tabelle1").Copy after:=Worksheets(Worksheets.Count)
  ActiveSheet.Name = neu
  Range("a1").Select
End Sub

_________________
Gruß Uwe
noby
Office-Kenner (kaum VBA)


Verfasst am:
15. Aug 2005, 13:44
Rufname:


AW: Blatt kopieren - AW: Blatt kopieren

Nach oben
       

Danke an alle!

Jetzt klappt es genauso wie ich es wollte!

Vielen Dank nochmal Very Happy
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Generell nur Wert kopieren können (nicht format usw.) 4 axel g. 2632 19. Nov 2013, 14:00
Hydronaut Generell nur Wert kopieren können (nicht format usw.)
Keine neuen Beiträge Excel Formeln: Zellen automatisch kopieren 2 Roland 01 4488 27. Okt 2005, 14:11
Roland 01 Zellen automatisch kopieren
Keine neuen Beiträge Excel Formeln: Letzte 3 Stellen einer Zelle kopieren? 4 Tonno 15151 30. Sep 2005, 11:10
Gast Letzte 3 Stellen einer Zelle kopieren?
Keine neuen Beiträge Excel Formeln: Formel in Schritten Kopieren 1-2-3-Frei-4-5-6-Frei 15 Gast 1297 20. Sep 2005, 09:40
Gast Formel in Schritten Kopieren 1-2-3-Frei-4-5-6-Frei
Keine neuen Beiträge Excel Formeln: formeln in andere sheets kopieren 2 folter 921 07. Sep 2005, 10:48
fridgenep formeln in andere sheets kopieren
Keine neuen Beiträge Excel Formeln: Wenn Bedingung Zeile kopieren 1 marco1 1634 28. Jul 2005, 14:04
Günni Wenn Bedingung Zeile kopieren
Keine neuen Beiträge Excel Formeln: Wenn Bedingung ganze Zeile in endere Arbeitsmappe kopieren 2 Unregistered7 1556 05. Mai 2005, 22:32
Gast Wenn Bedingung ganze Zeile in endere Arbeitsmappe kopieren
Keine neuen Beiträge Excel Formeln: 2 Exel Spalten automatisch in eine kopieren 3 Steffen 2231 04. März 2005, 08:09
steffen 2 Exel Spalten automatisch in eine kopieren
Keine neuen Beiträge Excel Formeln: Text von Tabelle1 auch in Tabelle 2 kopieren 7 Pinguin1977 2848 30. Jan 2005, 16:56
Pinguin1977 Text von Tabelle1 auch in Tabelle 2 kopieren
Keine neuen Beiträge Excel Formeln: Zahl um 1 erhöhen pro gedrucktes Blatt 0 redfin 496 18. Jan 2005, 10:22
redfin Zahl um 1 erhöhen pro gedrucktes Blatt
Keine neuen Beiträge Excel Formeln: Zellinhalte KOPIEREN 5 hilfloses Wesen 1732 23. Dez 2004, 13:42
Gast Zellinhalte KOPIEREN
Keine neuen Beiträge Excel Formeln: Formel mit "festem" Wert kopieren 2 sebbi 1937 08. Dez 2004, 20:36
sebbi Formel mit "festem" Wert kopieren
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks