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

Endung Excel Version Konstante als Variable setzen

Endung Excel Version Konstante als Variable setzen
SteffenS
Hallo Zusammen,
ich habe in meinem Modul alle meine verwendeten Dateien definiert.
Public Const xlf As String = ".xls" 'Dateiendung
Public Const bbdateiA As String = "BCA" & xlf
Public Const bbdateiB As String = "BCB" & xlf
Public Const bbdateiC As String = "BCC" & xlf
...
Mein Problem ist nur, dass ich bei Excel 2007 die Endung von
".xls" in ".xls" ändern muss (Konvertierung bekomme ich schon automatisch hin)
Gibt es eine Möglichkeit die Konstante "xlf" so zu ändern, dass diese
in Abhängigkeit der Version entweder ".xls" oder ".xlsm" lautet.
Ich habe es bereits mit einer Funktion versucht, aber diese kann ich ja nicht zuweisen:
Public Function xlvers() As String
'Ermittlung der Excel Version
Dim xlv As String
Dim appvers As Long
appvers = Left(Application.Version, Len(Application.Version) - 2)
If appvers 

Habt Ihr eine Idee wie ich dies anstellen kann?
Danke Euch.
MFG
Steffen Schmerler

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Endung Excel Version Konstante als Variable setzen
01.09.2009 15:42:07
Heinz
Hi,
appvers = Val(Application.Version)
mfg Heinz
brauche nochmal hilfe
01.09.2009 15:56:26
SteffenS
Danke erstmal für die Antwort,
aber wie bekomme ich Dateiendung an meine Constanten?
Public Const bbdateiA As String = "BCA" & xlf
Das xlf soll einmal ".xls" und bei Excel 2007 ".xlsm" sein
Danke Euch nochmal
Steffen
AW: brauche nochmal hilfe
01.09.2009 16:00:24
Hajo_Zi
Hallo Steffen,
Dein Verfahren würde ja bedeuten Du arbeitest mit zwei unterschiedlichen Dateisätzen?
Ist da das Kompatibilitätspaket 2007 nicht die bessere Lösung?

leider nicht...
01.09.2009 16:13:09
SteffenS
da es bei einigen Sachen Probleme gibt.
Ich muss also konvertieren.
Das Einzige was wie gesagt noch fehlt ist die Dateiendung in den Konstanten.
Danke
MFG
Steffen
Anzeige
leider nicht...
01.09.2009 16:13:10
SteffenS
da es bei einigen Sachen Probleme gibt.
Ich muss also konvertieren.
Das Einzige was wie gesagt noch fehlt ist die Dateiendung in den Konstanten.
Danke
MFG
Steffen
AW: brauche nochmal hilfe
01.09.2009 16:05:54
Heinz
Hi,
Konstanten können zur Laufzeit nicht mehr geändert werden, deshalb der Name Konstante.
Verwende halt Variable.
mfg Heinz
wie mache ich das am Besten?
01.09.2009 16:17:56
SteffenS
das alle meine verwendeten Dateien, während die Mappe offen ist
im Zugriff sind ohne das ich diese nochmal neu deklarieren muss?
Danke
MFG
Steffen
Anzeige
AW: wie mache ich das am Besten?
01.09.2009 16:27:09
Heinz
Hi,
in einem Standardmodul(z.B. Modul1 ganz oben unter Option explicit als Public deklarieren.
Die Zuweisung dann in deiner Function.
mfg Heinz
nochmal Hilfe, Verständnisfrage
01.09.2009 16:47:57
SteffenS
Hallo Heinz,
da ich mich Funktionen noch nicht auskenne muss ich nochmal Fragen.
Ich habe ca. 30 Dateien die ich derzeit über Konstanten gesetzt habe.
Muss ich da jetzt für jede Datei eine Funktion erstellen oder geht das auch mit einer.
Ich habe es mit:
Public Function xlversion() As String
'Ermittlung der Excel Version
Dim xlv As String
Dim appvers As Long
appvers = Left(Application.Version, Len(Application.Version) - 2)
If appvers 
probiert, aber das geht irgendwie net.
Danke Dir nochmal
Steffen
Anzeige
AW: nochmal Hilfe, Verständnisfrage
01.09.2009 20:45:30
Heinz
Hi,
dein Vorhaben ist sinnlos.
Was hindert dich, immer als xls zu speichern? Denk mal darüber nach.
mfg heinz
Der Vorteil von Fktt ist, dass sie einen Wert...
02.09.2009 00:50:19
Fktt
...zurückgeben, Steffen!
Das kann deine Fkt aber nicht, weil du sie wie eine Subroutine aufgebaut hast. Zum Schluss muss nämlich immer dem Fktsnamen der Rückgabewert zugewiesen wdn. Das wäre hier wohl am sinnvollsten ".xls" bzw ".xlsm". Die Zuweisung an deine GlobalVariable erfolgt dann in einer Subroutine. Aus diesem Grund ist es eigentl auch sinnlos, für diese 1-2 Zeilen extra eine Fkt zu schreiben...
Ich habe solche Abfragen gelegentl auch in Fkts- u.Subprozz, auch zur Füllung einer Globalvariable (Boolean oder Integer bzw mit eigenem Typ für Unterscheidung der Vss < xl9), niemals aber als eigenständige Fkt!
Tipp: Deklariere die Variable in 1em Normmodul und setze die Füllroutine in die Ereignisproz Workbook_Open des DokKlassenmoduls der Mappe (DieseArbeitsmappe), wenn das gleich bei Mappenstart festgelegt wdn soll. Ansonsten bevor die Variable das 1.Mal gebraucht wird.
Gruß Luc :-?
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige