ich stehe im moment vor dem Problem eine Versionsverwaltung für
Excel-Projekte zu realisieren.
Die Projekte werden mit Hilfe eines Makros in ein AddIn übertragen, bei
dieser Übertragung sollte möglichst eine Versionsnummer des jeweiligen
Projektes um eins hochgezählt werden.
Die Versionsnummer soll dabei aber möglichst nicht in einer Tabelle des
Projektes zwischen gespeichert werden.
Die Versionnummer außerhalb des Projektes zu speichern kommt auch nicht in
Frage. (z.B. INI-Datei, Registry usw.)
Wenn jemand eine Lösung parat hat möcht er sie mir bitte zukommenlassen.
Danke im voraus,
allen die aktiv in dieser Newsgroup mitarbeiten
und denen die sonst noch eine gute Idee
oder schon eigene Erfahrung gesammelt haben,
mfg
Rainer Hafemann
Zwei Varianten könnte ich Dir anbieten:
(1) Dokumenteigenschaft "Version" der Datei (Arbeitsmappe)
Unter Datei/Eigenschaften/Statistik findest Du eine Versionsnummer, die aber
in der Regel "brach" liegt - sprich ohne Eintrag bleibt. Mit der folgenden
Code-Zeile kannst Du den Wert aber jeweils um 1 erhöhen:
ActiveWorkbook.BuiltinDocumentProperties("Revision Number").Value =
ActiveWorkbook.BuiltinDocumentProperties("Revision Number").Value + 1
Auch dürfte nichts dagegen sprechen, daß Du als Versionsnummer
beispielsweise das Datum (zB die Zahl(!) 19990719) oder ev. sogar samt
Uhrzeit (zB 199907191105) verwendest.
(2) VBA-Code-Zeile austauschen
Falls Du die erste Lösungsvariante - aus welchen Gründen auch immer - nicht
möchtest, könntest Du die Versionsnummer zB auch als Konstante deklarieren
und dann diese eine VBA-Code-Zeile via Makro (!)austauschen. Ein Beispiel
für diese Technik findest Du auf der Web-Site von Hans Herber unter
http://www.herber.de/mailing/068499v.txt
Nur so als (ent-)warnender Hinweis: Ich habe die Erfahrung gemacht, daß
Anti-Viren-Programm bei der Suche nach Makroviren mittels Heuristik,
derartige (sv. nur bei der zweiten Lösungsvariante) Code-Zeilen als mögliche
"Bedrohung" sehen und dementsprechend "aufschreien". Insofern ist wohl auch
die erste Variante zu bevorzugen.
lg aus Wien
-Robert Gelbmann-
Ich habe mal versucht zu der Versionsnummer noch einem Buchstaben hinzuzubringen.
Scheint aber nicht zu klappen - egal ein numerischer Wert reicht ja aus.
Viele Grüße
Bernd
////////////////////////////////////////////////////
// Die MacHero Excel Homepage //
// Microsoft Excel MVP - freier Autor //
// http://members.aol.com/Machero //
\\ letzte Aktualisierung: 11.07.99 \\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
_____________________________________________________________
NewsGroups Suchen, lesen, schreiben mit http://netnews.web.de
>
>Hallo Robert,
>super Tip mit der Versionsverwaltung über die Dateieigenschaften zu pflegen!!
>
>Ich habe mal versucht zu der Versionsnummer noch einem Buchstaben hinzuzubringen.
> Scheint aber nicht zu klappen - egal ein numerischer Wert reicht ja aus.
>
Hallo Bernd,
auf die integrierten Dokumenteigenschaften kann nur lesend zugegriffen
werden, bzw. der Datentyp ist voreingestellt festgelegt.
Abhilfe schafft die Definition einer benutzerdefinierte
Dokumenteigenschaft, wie folgt:
Sub BenutzdefinierteDokumentEigenschaftHinzufügen()
ActiveWorkbook.CustomDocumentProperties.Add Name:="Laufende Nummer", _
LinkToContent:=False, Type:=msoPropertyTypeNumber, Value:=0
End Sub
Sub BenutzdefinierteDokumentEigenschaftÄndern()
ActiveWorkbook.CustomDocumentProperties("Laufende Nummer").Value = _
ActiveWorkbook.CustomDocumentProperties("Laufende Nummer").Value + 1
End Sub
Für Type kann auch msoPropertyTypeBoolean, msoPropertyTypeDate,
msoPropertyTypeFloat, msoPropertyTypeNumber oder msoPropertyTypeString
gesetzt werden.
MfG Frank
__________________________________________________________
E-Mail: Thei...@t-online.de
Viele Grüße
Bernd