2003-Datei in 2007-Datei konvertieren

20/11/2008 - 08:56 von Wolfgang Kutsche | Report spam
Hallo NG,

mit XL 2007 öffne ich eine XL 2003 Datei mit VBA-Code.
Über die Funktion „Office“ und „Konvertieren“ kann ich die xls-Datei in eine
xlsm-Datei umwandeln und abspeichern.
Diesen Vorgang möchte ich nun in „Workbook_open“ per VBA machen lassen.
Das Feststellen der unterschiedlichen Versionen ist für mich dabei kein
Problem.
Was mir fehlt, ist das Befehlswort für den Vorgang „Office“ … „Konvertieren“.
Der Makro-Recorder zeigt leider – wie so hàufig in XL 2007 – nichts an.
Freue mich über jede Hilfestellung.

Gruß Wolfgang
WinXP Home SP3, Office 2003 SP3 & 2007 SP1
http://www.wk-bau-edv.de
 

Lesen sie die antworten

#1 Melanie Breden
20/11/2008 - 09:33 | Warnen spam
Hallo Wolfgang,

"Wolfgang Kutsche" schrieb:
mit XL 2007 öffne ich eine XL 2003 Datei mit VBA-Code.
Über die Funktion „Office“ und „Konvertieren“ kann ich die xls-Datei in eine
xlsm-Datei umwandeln und abspeichern.
Diesen Vorgang möchte ich nun in „Workbook_open“ per VBA machen lassen.
Das Feststellen der unterschiedlichen Versionen ist für mich dabei kein
Problem.
Was mir fehlt, ist das Befehlswort für den Vorgang „Office“ … „Konvertieren“.
Der Makro-Recorder zeigt leider – wie so hàufig in XL 2007 – nichts an.
Freue mich über jede Hilfestellung.



Beim konvertieren passiert nichts anderes, als dass die aktive Datei im neuen
Dateiformat gespeichert wird und dabei die ursprüngliche Datei im Verzeichnis ersetzt .

Warum willst du diesen Vorgang im Workbook_Open-Ereignis ausführen?
Das würde ja bedeuten, dass du jede Datei zuerst öffnen musst, um den Code
dort reinzuschreiben.

Folgende Prozedur führt die Konvertierung an der aktiven Datei aus:

Public Sub ConvertActiveWorkbook()
Dim strOldFile As String

With ActiveWorkbook
' Dateiformat prüfen
If .FileFormat = xlWorkbookNormal Then
' Dateinamen merken
strOldFile = .FullName
' Datei im neuen Dateinformat speichern
.SaveAs Filename:=Replace(strOldFile, "xls", "xlsm"), _
FileFormat:=xlOpenXMLWorkbookMacroEnabled
' alte Datei löschen
Kill strOldFile
End If
End With
End Sub


Mit freundlichen Grüssen
Melanie Breden

- Microsoft MVP für Excel -
www.melanie-breden.de

Ähnliche fragen