Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
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

Datei kopieren

Datei kopieren
Werner
Hallo zusammen,
ich hab mal wieder ein Problem, ich möchte eine Datei kopieren d.h neu Anlegen.
Das Makro soll auf eine Schaltfläche gelegt werden und bei klick soll die Active Datei kopiert und neu Angelegt werden, danach soll Tabelle1 geöffnet werden und die Meldung erscheinen : unter welchen Namen soll die Datei gespeichert werden wobei der Name in Zelle B1 eingegeben werden soll.
Viele Grüße
Werner

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

Betreff
Benutzer
Anzeige
AW: Datei kopieren
07.09.2010 23:50:09
fcs
Hallo Werner,
die Reihenfolge macht man geschickter Weise etwas anders.
1. Neuen Namen angeben
2. Kopie speichern
3. Neuen Namen in Blatt 1 eintragen.
Nachfolgend ein entsprechendes Makro, das als 1. den Dialog zur Eingabe/Auswahl des Dateinamens anzeigt. Es sollte auch unter Excel 2000 funktionieren.
Das Makro kopierst du in ein allgemeines Modul deiner Persönlichen Makroarbeitsmappe PERSONL.XLS.
Anschließend kannst du es z.B. einer Schaltfläche auf einer Symbolleiste zuordnen.
Gruß
Franz
'Erstellt unter Excel 2007
Sub CopyActiveFile()
Dim wbAktiv As Workbook, vNewName As Variant, sInitialName As String
Set wbAktiv = ActiveWorkbook
'Vorgabe für neuen Namen generieren
sInitialName = "Neu " & Left(wbAktiv.Name, InStrRev(wbAktiv.Name, ".") - 1)
'Dialog zur Eingabe/Auswahl des Dateinamens anzeigen
vNewName = Application.GetSaveAsFilename(InitialFileName:=sInitialName, _
Filefilter:="Excel (*.xls;*.xlsx;*.xlsm;*.xlsb),*.xls;*.xlsx;*.xlsm;*.xlsb", _
Title:="Bitte neuen Dateinamen eingeben/auswählen")
If vNewName = False Then GoTo Beenden 'Dialog wurde abgebrochen
'Neuen Namen mit Name der aktiven Datei vergleichen
If UCase(wbAktiv.FullName) = UCase(vNewName) Then
MsgBox "Als neuer Name wurde der Name der aktiven Datei gewählt. " & vbLf _
& "Das ist nicht zulässig!", vbInformation + vbOKOnly
GoTo Beenden
End If
If Dir(vNewName)  "" Then
If MsgBox("Eine Datei mit dem ausgewählten Namen existiert bereits. " & vbLf _
& "Datei """ & vNewName & """ überschreiben?", _
vbQuestion + vbOKCancel + vbDefaultButton2) = vbCancel Then
GoTo Beenden
End If
End If
'Kopie der Datei unter dem neuen Namen speichern
wbAktiv.SaveCopyAs Filename:=vNewName
'Kopie öffnen
Set wbAktiv = Workbooks.Open(Filename:=vNewName)
'Blatt 1 aktivieren und Namen in B1 eintragen
With wbAktiv
.Worksheets(1).Activate
.Worksheets(1).Range("B1") = .FullName 'name inkl. Pfad
'    .Worksheets(1).Range("B1") = .Name 'nur Dateiname
.Save
End With
Beenden:
End Sub

Anzeige
AW: Datei kopieren
13.09.2010 18:44:44
Werner
Hallo Franz,
Entschuldigung ,dass ich mich erst jetzt melde, aber ich war ein paar Tage im Urlaub !!
Dein Vorschlag ist genau das was ich gesucht habe und es klappt Super :-)
Nochmals herzlichen Dank :-) :-)
Viele Grüße
Werner
AW: Datei kopieren
13.09.2010 23:44:23
Werner
Hallo nochmal,
ich hab doch noch eine Frage: und zwar möchte ich noch das Tabellenblatt "Jaresvergleich" kopieren und ohne Verknüpfungen daneben einfügen. Wie müßte ich das Makro noch ändern.
Viele Grüße
Werner
AW: Datei kopieren
14.09.2010 07:15:34
fcs
Hallo Werner,
in welcher Datei/Arbeitsmappe befindet sich das Tabellenblatt "Jahresvergleich"?
Was meinst du mit "ohne Verknüpfungen"?
- Alle Formeln durch ihre Werte ersetzen?
- Verknüpfungen mit einer anderen Arbeitsmappe in was anderes ändern? Wenn ja, in was?
Soll das kopierte Blatt ggf. einen bestimmten Namen bekommen?
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige