SaveAs-FileFormat-Problem

04/02/2008 - 18:44 von Harald Kante | Report spam
Hallo Excel-Experten,

um je nach Excelversion eine MHTML-Datei im xls-Format zu speichern,
verwende ich folgende Code:

If Application.Version = "12.0" Then
wbExp.SaveAs sFilename, FileFormat:=xlExcel8
Else
wbExp.SaveAs sFilename
End If

Unter Excel 12.0 funktioniert das auch problemlos, unter den
Vorgàngerversionen kommt die Fehlermeldung "Variable nicht definiert,
was verstàndlich ist, denn "xlExcel8" ist unter diesen Versionen
offensichtlich nicht bekannt.
Gibt es außer dem Weglassen von "Option Explicit" ein elegantere Lösung?

mfg

Harald Kante
 

Lesen sie die antworten

#1 Lorenz Hölscher
04/02/2008 - 18:56 | Warnen spam
Hallo Harald,

Du kannst den tatsàchlichen Wert der Konstanten ermitteln und
stattdessen dort eintragen (und vielleicht einen Kommentar hinzufügen
wegen des spàteren Verstàndnisses). Beispielsweise kannst Du mit F2
den Objektkatalog öffnen, dort nach der Klasse xlFileFormat suchen und
dort unten die Konstante xlExcel8 markieren. Ganz unten im grauen
Bereich steht dann der Wert (für xlExcel7 z.B. 39 bzw. &H27). Ich
habe hier gerade kein Excel2007, deswegen kann ich Dir den Wert nicht
sagen.

Alternativ gàbe es eine #if/#endif-Konstruktion, damit bestimmte Teile
Deines Codes für genau solche Fàlle nicht kompiliert werden. Das
scheint mir hier aber zu hoch gegriffen.


tschö, Lorenz
http://www.cls-software.de/cls_soft...elVBA.aspx

Ähnliche fragen