Eigene Einstellungen

Aus VBA-wiki
Wechseln zu: Navigation, Suche

Dateispezifische Einstellungen

Dateispezifische Einstellungen bzw. Eigenschaften sind Informationen, welche eine bestimmte Office-Datei betreffen, wie eine Präsentation, eine Arbeitsmappe oder ein Dokument.

Benutzerdefinierte Eigenschaften

Eingebaute Dokumenteigenschaften

Name Anmerkungen Überschreibbar
Title ja
Subject ja
Author ja
Keywords ja
Comments ja
Template nein
Last author
Revision number nein
Application name nein
Last print date nein
Creation date nein
Last save time nein
Total editing time nein
Security nein
Category
Format
Manager ja
Company ja
Number of bytes nein
Hyperlink base ja
Content type
Content status
Language
Document version
Number of pages nein
Number of words nein
Number of characters nein
Number of lines nein
Number of paragraphs nein
Number of slides nein
Number of notes nein
Number of hidden Slides nein
Number of multimedia clips nein
Number of characters (with spaces) nein

Globale Einstellungen

Globale Einstellungen betreffen Ihre gesamte Lösung oder sind anwendungs- bzw. dokumentübergreifend.

Wenn globale Einstellungen editierbar sein sollen, sollten sie in der Registry abgelegt werden.

Wenn Einstellungen permanent sind, sollten diese lieber in INI- oder XML-Dateien abgelegt werden, denn je nach Speicherort sind diese nicht vom Anwender veränderbar.

Registry

Wenn Sie möchten, dass sich Ihre Lösungen Einstellungen merkt, die Sie später abrufen können, bietet sich hierfür die Windows Registry an. So können Sie zum Beispiel beim nächsten Start Ihrer Lösung den letzten Autoren anbieten, oder einen bestimmten Zustand wiederherstellen, damit der Anwender genau dort weiter arbeiten kann, wo er aufgehört hat.

SaveSetting, GetSetting, DeleteSetting

VBA stellt uns diese drei Methoden zur Verfügung, um die wichtigsten Aufgaben zum Beschreiben und Auslesen Ihrer Einstellungen zu ermöglichen.

Bei allen drei Methoden gelten folgende Regeln:

  • Die Einträge werden ausschließlich im Registry-Zweig 'HKEY_CURRENT_USER\Software\VB and VBA Program Settings' vorgenommen.
  • Der erste Parameter bezeichnet den Namen der Anwendung, unter dem Ihre Einstellungen gespeichert werden sollen.
  • Der zweite Parameter nennt den Abschnitt, in dem Ihre Einstellung untergebracht werden soll.
    • Da der Abschnitt kein optionaler Parameter ist, können Sie nicht Einstellungen direkt im Anwendungs-Zweig unterbringen.
    • Wenn Sie Ihre Einstellungen weiter verzweigen möchten, können Sie beim Abschnitt eine Pfadangabe mit '\' angeben (zum Beispiel 'Section\Options').
  • Der dritte Parameter bezeichnet den Namen des Wertes, der angesprochen werden soll.
    SaveSetting "MyApplication", "Section", "Setting", "Value"
    SaveSetting "MyApplication", "Section\Options", "Setting2", "Value2"
    
    Debug.Print GetSetting("MyApplication", "Section", "Setting")
    Debug.Print GetSetting("MyApplication\Section", "Options", "Setting2")

Wenn Sie Ihre Einstellungen löschen möchten, können Sie 'DeleteSetting' mit den oben besprochen Parametern verwenden:

    DeleteSetting "MyApplication", "Section", "Setting"    ' Löscht die Einstellung 'Setting'
    DeleteSetting "MyApplication", "Section"               ' Löscht den Abschnitt 'Section'
    DeleteSetting "MyApplication"                          ' Löscht den Zweig 'MyApplication'

INI-Dateien

XML

Sie können Ihre Einstellungen, Anwender- und Firmendaten, Standorte etc. in XML-Dateien speichern, die in einem von Ihnen gewählten Verzeichnis liegen und somit permanent zur Verfügung stehen.