You are not logged in.

  • Login
  • "AtroX_Worf" started this thread

Posts: 11,465

Location: Hamburg

Occupation: GER

  • Send private message

1

Wednesday, March 26th 2008, 5:29pm

Unterschiedliche Excelversionen

Ich habe ein Programmieprojekt, welches als VBA-Makro zu lösen ist und auf möglichst vielen verschiedenen Office-Paketen laufen soll.

Konkret geht es einmal um die Versionsdimension, also ab schätzungsweise Excel 1997 bis Excel 2007 soll alles abgedeckt werden. Besonders der Sprung von 2003 zu 2007 war ja doch qualitativer Natur.
Zum zweiten sollen möglichst alle Sprachversionen oder sonstigen Versionen unterstüzt werden. Sollte eigentlich kein größeres Problem sein, intern verwendet Office ja eh englisch. Allerdings soll es da zu kleineren und größeren Komblikationen kommen können.

Speziell unterschiedlich in der Versionsdimension sind die Verlinkungen auf verschiedene Klassen, dies lässt sich aber mit einer Weiche regeln.
Fallen euch noch Besonderheiten ein, welche es zu beachten gibt?

Existiert eien Dokumentation, welche detailiert die einzelnen Unterschiede (eventuell auch Servicepacks?) dokumentiert und vergleichend nebeneinander stellt?

Ich möchte (vba~) objektorientiert arbeiten, um das Programm leichter wartbar zu machen, Weiß jemand, ab welcher Version dies von VBA unterstützt wird? Schon immer in der gleichen Form?

Gibt es ein eMöglichkeit, verschiedene Excelversionen zu emulieren? Oder müsste ich dazu parallel alle Excel-Versionen installieren? Das switchen ist immer etwas nervig, da dann die Windows-Installationsumgebung aufgerufen wird, müsste nachschauen, wo man dies ausschalten kann.

Irgendwelche Vorschläge oder Hinweise zur Thematik? Irgendwelche Literatur/Programm/Linkempfehlungen?

Posts: 2,153

Location: Freiberg

Occupation: GER

  • Send private message

2

Wednesday, March 26th 2008, 5:42pm

This post has been edited 1 times, last edit by "GWC_Vegeta" (Mar 26th 2008, 5:43pm)


  • "AtroX_Worf" started this thread

Posts: 11,465

Location: Hamburg

Occupation: GER

  • Send private message

3

Wednesday, March 26th 2008, 5:49pm

Danke, die Seite kenne ich. Ist wirklich, neben der Microsoft-DOM page die beste für Excel.

Leider geht es mir nciht zu sehr um build-in Funktionen, sondern um VBA. Ich greife (so gut wie) gar nicht auf Excel-Versionen zurück, sondern programmiere sie im Bedarfsfall selbst (bringt Performance und ist sicherer für Portabilität, das meiste lässt sich ja auch recht schnell schreiben.

Gibt es auf der http://www.xlam.ch/ page irgendwo nähere Informationen zu Excel-VBA? Diese Seite kenne ich.

€dit #1: Ach ja, was ich noch weiß: In Office 1997 wurde noch VBA 5 verwendet, ab Office 2000 dann VBA 6.
Das Programm muss aber eigentlich auch erst ab Office 2000 Lauffähig sein, Office 1997 muss nicht notwendigerweise unterstützt werden.

€dit #2: Eventuell reicht mir auch das komplette DOM für jede Version. Ich muss nur aufpassen, dass ich nicht zu Excelnah proegrammiere und excelinterne sortierroutinen etc. verwende, wo bestimmte Parameter erst in späteren Versionen zur Verfügung stehen.

Problem ist halt zum einen die pure Information, zum anderen eine Möglichkeit, um es für die verschiedenen Versionen testen zu können.

This post has been edited 2 times, last edit by "AtroX_Worf" (Mar 26th 2008, 5:57pm)


Posts: 2,153

Location: Freiberg

Occupation: GER

  • Send private message

4

Wednesday, March 26th 2008, 7:16pm

Quoted

Original von AtroX_Worf

€dit #2: Eventuell reicht mir auch das komplette DOM für jede Version. Ich muss nur aufpassen, dass ich nicht zu Excelnah proegrammiere und excelinterne sortierroutinen etc. verwende, wo bestimmte Parameter erst in späteren Versionen zur Verfügung stehen.



Dann programmier doch gleich in VB und portier dann

Quoted

Bis zur Visual-Basic-Version 6.0 ist es problemlos möglich, Module und Formulare zwischen VBA und VB auszutauschen. Seit der Umstellung auf das .NET-Framework ist es nicht mehr möglich, Dateien direkt auszutauschen, da sich das Dateiformat geändert hat. Module (also Quelltext-Dateien) können durch Umbenennung und Anpassung an die .NET-Datenstrukturen überführt werden. Formulare hingegen müssen komplett neu erstellt werden. Allerdings gibt es die Möglichkeit in Visual Studio .NET mit den "Visual Studio Tools for Office System" (VSTO) Add-Ins für MS Office zu entwickeln, die die gleichen Aufgaben übernehmen können wie klassische Makros.

  • "AtroX_Worf" started this thread

Posts: 11,465

Location: Hamburg

Occupation: GER

  • Send private message

5

Wednesday, March 26th 2008, 7:27pm

Quoted

Original von GWC_Vegeta

Quoted

Original von AtroX_Worf
Dann programmier doch gleich in VB und portier dann

Darf leider nicht, Vorgabe ist VBA zwecks späterer Wartung. Ich kanns ja mal vorschlagen... wird aber sicher abschlägig entschieden werden.

Quoted

Bis zur Visual-Basic-Version 6.0 ist es problemlos möglich, Module und Formulare zwischen VBA und VB auszutauschen. Seit der Umstellung auf das .NET-Framework ist es nicht mehr möglich, Dateien direkt auszutauschen, da sich das Dateiformat geändert hat. Module (also Quelltext-Dateien) können durch Umbenennung und Anpassung an die .NET-Datenstrukturen überführt werden. Formulare hingegen müssen komplett neu erstellt werden. Allerdings gibt es die Möglichkeit in Visual Studio .NET mit den "Visual Studio Tools for Office System" (VSTO) Add-Ins für MS Office zu entwickeln, die die gleichen Aufgaben übernehmen können wie klassische Makros.

Danke. Formulare werden auch ein Teil sein.