Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datei unter neuen Dateinamen speichern

Forumthread: Datei unter neuen Dateinamen speichern

Datei unter neuen Dateinamen speichern
25.05.2005 10:01:05
Alex
Hallo!
Ich möchte folgendes über ein Makro realisieren:
Ich öffne in Excel eine Datei mit der Endung XXX.dat. Von dieser Datei soll nach Betätigen eines Buttons, automatisch eine Kopie in den selben Pfad gespeichert werden. Die Kopie soll den gleichen Dateinamen besitzen. Allerdings soll die Endung .dat durch die Endung .xls ersetzt werden, also XXX.xls
Wie muss der Code aussehen?
Gruß
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei unter neuen Dateinamen speichern
25.05.2005 10:10:22
UweD
Hallo
so geht es:

Sub SpeichernUnter()
Dim Nam$, Neu$
Nam = ActiveWorkbook.Name
Neu = Application.Substitute(Nam, ".dat", ".xls")
ActiveWorkbook.SaveAs Neu
End Sub

Gruß UweD
AW: Datei unter neuen Dateinamen speichern
25.05.2005 10:41:09
Alex
Danke für die schnelle Antwort!
Ich lasse nun zusätzlich den Pfad auslesen und fügen diesen bei dem Befehl ActiveWorkbook.SaveAs an.
Öffne ich aber die .xls Datei, sind nun die Arbeitsblätter verschwunden, die ich vorher über ein Makro hinzugefügt habe. Das heißt es ist nur noch das Arbeitsblatt in der Arbeitmappe vorhanden, welches beim Speichervorgang aktiv war. Auch die .dat Datei wird irgendwie automatisch gespeichert und liegt nun verändert vor. Diese soll aber ungeändert bleiben.
Wie kann man die beiden Dinge realisieren?
Gruß
Anzeige
AW: Datei unter neuen Dateinamen speichern
25.05.2005 11:24:27
UweD
Hallo nochmal
Klar.. Die .dat wird als Textdatei angesehen und die enthält nur ein Blatt.
So wird die Datei im Excelformat abgespeichert.
(Pfad wurde auch ergänzt)

Sub SpeichernUnter()
Dim Nam$, Pfad$, Neu$
Nam = ActiveWorkbook.Name
Pfad = ActiveWorkbook.Path & "\"
Neu = Application.Substitute(Nam, ".dat", ".xls")
ActiveWorkbook.SaveAs Filename:=Pfad & Neu, FileFormat:=xlNormal
End Sub

Gruß aus Siegen
Anzeige
AW: Datei unter neuen Dateinamen speichern
25.05.2005 11:43:48
Alex
Es ist fast Perfekt :)
Bevor ich im Excelformat speichern lasse, mache ich über das Makro noch ein paar Änderungen in der geöffneten .dat Datei. Diese Änderungen sind komischer Weise, wenn ich die .dat Datei danach wieder öffne, gespeichert. Ich möchte die .dat Datei aber unangetastet lassen.
Alles ander funtioniert bestens!
Anzeige
AW: Datei unter neuen Dateinamen speichern
25.05.2005 12:09:54
Alex
Hab den Fehler gefunden... Es stand noch eine alte Codezeile rum, welche die .dat Datei nochmal als .dat Datei gespeichert hat :)
Jetzt läuft alles.
Danke nochmal
Gruß
AW: Datei unter neuen Dateinamen speichern
25.05.2005 10:17:23
Ceci
Hallo,
versuch's mal mit:
Dim wb As Workbook
Dim TB As Worksheet
Dim dName$
Set wb = Workbooks.Open("L:\BL_Einkauf\ISO 9001-2000\Lieferanten-Bewertungen\Lieferantenbewertung 2005\Quartal1\Name.dat")
'!!!Datei und Tabellennamen anpassen!!!

On Error Resume Next

'Datei unter der Namen öffnen speichern
'------------------------------------------------
Set TB = ActiveWorkbook.Worksheets(1)
dName = "L:\BL_Einkauf\ISO 9001-2000\Lieferanten-Bewertungen\Lieferantenbewertung 2005\Quartal1\"Name.xls"

'Datei unter neuen endung speichern
'--------------------------------------
'Ausschalten der Meldung "Wollen sie wirklich Speichern?" bzw. aller
'Meldungsfenster
Application.DisplayAlerts = False
TB.SaveAs dName
'wiedereinstellen der Funktion
Application.DisplayAlerts = True

'Datei soll nachdem alle gespeichert sind geschlossen werden
wb.Close True
Hab den Code zwar nicht getestet, kannst ja mal bescheid geben, ob es funktioniert hat.
Gruß cäcilia
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Datei unter neuen Dateinamen speichern in Excel


Schritt-für-Schritt-Anleitung

Um eine Datei mit der Endung .dat in Excel unter einem neuen Namen zu speichern, kannst Du ein einfaches Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne die .dat-Datei mit Excel.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke im Menü auf „Einfügen“ und dann auf „Modul“.

  4. Kopiere den folgenden Code in das Modul:

    Sub SpeichernUnter()
        Dim Nam As String, Pfad As String, Neu As String
        Nam = ActiveWorkbook.Name
        Pfad = ActiveWorkbook.Path & "\"
        Neu = Application.Substitute(Nam, ".dat", ".xls")
        ActiveWorkbook.SaveAs Filename:=Pfad & Neu, FileFormat:=xlNormal
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Füge einen Button in Dein Arbeitsblatt ein, um das Makro auszuführen.

  7. Weise dem Button das Makro zu.

Wenn Du nun den Button drückst, wird die .dat-Datei unter dem neuen Namen mit der Endung .xls gespeichert.


Häufige Fehler und Lösungen

  • Problem: Arbeitsblätter fehlen nach dem Speichern
    Lösung: Achte darauf, dass die .dat-Datei nur ein Arbeitsblatt enthält. Wenn Du mehrere Arbeitsblätter benötigst, musst Du diese vorher in die Arbeitsmappe einfügen.

  • Problem: Ursprüngliche .dat-Datei wird verändert
    Lösung: Vergewissere Dich, dass Du keine Codezeilen hast, die die .dat-Datei erneut speichern. Überprüfe den gesamten Code auf solche Zeilen.

  • Problem: Fehlermeldungen beim Speichern
    Lösung: Stelle sicher, dass der Pfad korrekt ist und dass Du Schreibrechte für den Zielordner hast.


Alternative Methoden

Eine andere Methode, um eine .dat-Datei in Excel zu speichern, ist die Verwendung von VBA mit einem anderen Ansatz:

Sub SpeichernUnterAlternative()
    Dim wb As Workbook
    Dim TB As Worksheet
    Dim dName As String
    Set wb = Workbooks.Open("Pfad\zur\Datei.dat") ' Pfad anpassen
    Set TB = wb.Worksheets(1)
    dName = "Pfad\zur\Datei.xls" ' Pfad und Name anpassen
    Application.DisplayAlerts = False
    TB.SaveAs dName
    Application.DisplayAlerts = True
    wb.Close True
End Sub

Diese Methode funktioniert ebenfalls, um eine .dat-Datei in Excel zu öffnen und unter einem neuen Namen zu speichern.


Praktische Beispiele

Angenommen, Du hast eine Datei mit dem Namen Daten.dat im Verzeichnis C:\ExcelFiles. Mit dem ersten Makro würde die Datei nach dem Speichern Daten.xls im gleichen Verzeichnis erscheinen.

Ein Beispiel für den vollständigen Pfad könnte so aussehen:

Set wb = Workbooks.Open("C:\ExcelFiles\Daten.dat")

Wenn Du das Makro ausführst, wird die Datei in C:\ExcelFiles\Daten.xls gespeichert.


Tipps für Profis

  • Verwende FileFormat:=xlOpenXMLWorkbook für .xlsx-Dateien, wenn Du moderne Excel-Dateien speichern möchtest.
  • Teste den Code in einer Testumgebung, bevor Du ihn in einer produktiven Umgebung anwendest.
  • Nutze On Error Resume Next vorsichtig, um Fehler zu ignorieren, aber vergiss nicht, sie später zu behandeln.

FAQ: Häufige Fragen

1. Wie kann ich eine .dat-Datei in Excel öffnen?
Du kannst dies tun, indem Du die Datei direkt in Excel öffnest. Excel erkennt die .dat-Datei und zeigt den Inhalt an.

2. Welcher Programmbefehl speichert eine Kopie einer Datei unter einem anderen Namen?
Der Befehl ActiveWorkbook.SaveAs wird verwendet, um eine Datei unter einem neuen Namen zu speichern. Achte darauf, den gewünschten Dateinamen und das Format anzugeben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige