Office Logo  Zurück zur Hauptseite

Excel-Startparameter

       Allgemeines über Excel-Startparameter

       Übersicht der Excel-Startparameter

       Unterschiede bei den verschiedenen Excel-Versionen
          Startparameter '/i'
          Startparameter '/s'
          Startparameter '/e'

       Inoffizielle, nicht dokumentierte Startparameter

       Excel im Vollbildmodus starten

       Eigene Excel-Startparameter definieren

       Alternativen zu eigenen Excel-Startparametern

       Weitere Informationsquellen

 

      Home Zur Hauptseite

To Top

Allgemeines über Excel-Startparameter

Micorosoft Excel stellt mehrere Schalter zur Verfügung, die in der Befehlszeile angegeben werden können und den Programmstart steuern. Diese Schalter werden als so genannte Startparameter bezeichnet. Manchmal wird auch Befehlszeilen-Parameter, Startschalter oder englisch Startup Switches verwendet, wobei in Bezug auf Microsoft Excel der Begriff Startparameter üblich ist.

Auf dieser Seite werden sämtliche Startparameter von Excel 97, Excel 2000, Excel 2002/XP und Excel 2003 vorgestellt und ausführlich erklärt. Sie erfahren hier alles über Einsatzgebiete, Auswirkungen, Probleme und Gefahren von offiziellen, inoffiziellen und selbstdefinierten Startparametern.

Weitere Informationen

Fragen und Antworten: Kann man eigene Start-Parameter definieren?

VBA-Codebeispiele: Eigene Start-Parameter verwenden

To Top

 


Übersicht der Excel-Startparameter

Übersicht der Parameter

TODO: Alle Parameter auflisten.

TODO: Beschreiben, wie die neue leere Mappe aussieht (Vorlage Mappe.xlt im XlStart-Ordner).

TODO: Beschreiben, dass das Arbeitsverzeichnis im Eigenschaften-Dialog von Excel.exe keine Auswirkung besitzt.

TODO: Kombinieren von Startparametern beschreiben.

 

Beschreibung der Parameter

Die nachfolgende Tabelle zeigt alle offiziellen Startparameter von Microsoft Excel der gängigen Programmversionen 97, 2000, 2002 und 2003 (es gibt auch inoffizielle Startparameter, siehe Kapitel Inoffizielle, nicht dokumentierte Startparameter). Wie man eigene Startparameter definieren kann, erfahren Sie in Kapitel Eigene Excel-Startparameter definieren.

Hinweis
- Die Parameter sind nicht "case sensitive", d.h. sie können in Gross- und/oder Kleinbuchstaben eingegeben werden.
- Anstelle des Schrägstriches '/' kann auch der Bindestrich '-' verwendet werden.
- Wenn mehrere Parameter gleichzeitig verwendet werden, muss zwischen den einzelnen Parametern immer ein Leerzeichen eingegeben werden.

Parameter Zweck Excel-Version Beispiel
(ohne) Startet Excel im normalen Modus.

Wenn Sie Microsoft Excel ohne jeglichen Parameter ausführen, wird die Anwendung im normalen Modus gestartet, wobei das Startfenster eingeblendet und eine neue, leere Arbeitsmappe angelegt wird.

Es wird der Standardarbeitsordner verwendet, der in der Windows Registry im Eintrag "DefaultPath" festgelegt ist. Der Standardarbeitsordner kann im Optionen-Dialog, Registerseite "Allgemein", oder mit VBA anhand Application.DefaultFilePath abgefragt bzw. gesetzt werden.

Nach dem Programmstart ist das aktuelle Verzeichnis identisch mit dem Standardarbeitsordner. Das aktuelle Verzeichnis kann mit VBA anhand CurDir ermittelt bzw. mit ChDir gewechselt werden.

97/2000/2002/2003 -
<Pfadname/Dateiname> Startet Excel und öffnet die angegebene Arbeitsmappe.

Wenn im Datei- oder Pfadname ein oder mehrere Leerzeichen vorkommen, muss der gesamte Ausdruck in Anführungszeichen ("") angegeben werden. Als Alternative ohne Anführungszeichen kann die Datei in der kurzen MS DOS-Schreibweise angegeben werden.

Beispiel:
  C:\Progra~1\Micros~1\Dateien\Test.xls

Man kann auch mehrere Dateien in der Befehlszeile angeben, wobei die einzelnen Dateinamen jeweils durch ein einzelnes Leerzeichen getrennt werden müssen. Wenn eine der angegebenen Dateien ein Leerzeichen im Pfad- oder Dateiname enthält, so muss nur diese Datei in Anführungszeichen geschrieben werden.

Beispiel mit drei Dateien:
  C:\Daten\Mappe.xls ""C:\Daten\Andere Mappe.xls"" C:\Backup\EineMappe.xls

Achtung
Beachten Sie, dass zwischen dem Programmdateiname "Excel.exe" und dem Dateiname der zu öffnenden Arbeitsmappe nur ein Leerzeichen steht und kein zusätzliches Zeichen wie " -" oder " /". Geben Sie nach dem Leerzeichen auf keinen Fall einen Schrägstrich (/) ein, da sonst Excel den nachfolgenden Text als Parameter und nicht als Pfad-/Dateiname betrachtet. Dies führt entweder zur Fehlermeldung "<Datei.xls> konnte nicht gefunden werden" oder zu einem unerwarteten Excel-Verhalten mit teilweise gefährlichen Auswirkungen (siehe Beschreibung von Parameter '/i' und '/e').

Richtig:
  "C:\Programme\Microsoft Office\Excel.exe" C:\Daten\Test.xls
Falsch:
  "C:\Programme\Microsoft Office\Excel.exe" /C:\Daten\Test.xls

Problematisch wird es, wenn die zu öffnende Datei auf dem Laufwerk D: liegt und vor dem Pfad-/Dateiname ein Schrägstrich (/) angegeben wird, beispielsweise "/D:\Daten\Test.xls". Hier interpretiert Excel den Text als Parameter '/d' (es wird nur der erste Buchstabe berücksichtigt), der zwar offiziell nicht existiert, aber trotzdem eine Auswirkung hat. Nach dem vollständigen Aufstarten von Excel ist die Anwendung gesperrt. Excel wird normal ausgeführt und man kann die Anwendung auch in der Taskliste deaktivieren und aktivieren. Es ist jedoch nicht möglich, das Anwendungsfenster, eine Symbolleiste, eine Zelle oder irgend ein anderes Element anzuklicken, und auch die Sanduhr wird permanent angezeigt. Dieses Verhalten tritt nur beim Buchstabe "d" auf. Bei anderen Buchstaben, die ebenfalls nicht für einen Parameter stehen, beispielsweise "b", "c" oder "v", startet Excel normal. Lesen Sie mehr zu diesem Thema unter Inoffizielle, nicht dokumentierte Startparameter.

97/2000/2002/2003 C:\Daten\Test.xls
/e (/embedded) Startet Excel ohne Einblenden des Startfensters und ohne eine neue, leere Arbeitsmappe anzulegen.

Beachten Sie bitte, dass nur mit '/e' Excel ohne Startfenster und ohne neue Mappe gestartet wird. Wenn Sie den Parameter '/embedded' verwenden, passiert zwar das Gleiche, aber ohne dass das Anwendungsfenster angezeigt wird. Excel wird in diesem Fall als Prozess und nicht als Anwendung (Task) gestartet. Der Parameter '/embedded' besitzt somit keine praktische Verwendung.

Hinweis
Dieser Parameter aktiviert den Modus, der Excel-intern zum Öffnen/Bearbeiten einer eingebetteten Excel-Tabelle verwendet wird. Wenn Sie zum Beispiel in einem Word-Dokument eine bestehende Exceldatei einbetten (über Menübefehl Einfügen/Objekt/Aus Datei) und dann die Exceltabelle bearbeiten (Menübefehl Bearbeiten/Tabelle-Objekt/Bearbeiten), wird quasi Excel mit dem Parameter '/embedded' gestartet, wobei das Excel-Anwendungsfenster nicht eingeblendet wird. Dadurch kann die Tabelle innerhalb des Word-Dokumentes bearbeitet werden (sogenanntes In-Place Editing). Wenn Sie dagegen den Menübefehl Bearbeiten/Tabelle-Objekt/Öffnen ausführen, wird Excel mit dem Parameter '/e' gestartet und die Tabelle im sichtbaren Excel-Anwendungsfenster geöffnet.

Anmerkung des Autors
Beachten Sie, dass Excel nach dem Start mit Parameter '/e' mehr Speicher als beim gewöhnlichen Start belegt. Bei meinem Microsoft Excel 97 sind es gemäss mehreren durchgeführten Tests ca. 2.3 MB mehr. Den Grund dafür konnte ich bislang nicht herausfinden. Interessant ist, dass sich, nachdem man Excel mit '/e' gestartet hat, beim Anlegen einer neuen, leeren Mappe der Speicherbedarf automatisch auf den üblichen Wert reduziert. Ich konnte die erhöhte Speichernutzung mehrmals reproduzieren und eindeutig erkennen. Allerdings trat dieses Phänomen auf dem gleichen Computer ebenfalls mehrmals ganz klar nicht auf, sodass ich lediglich bestätigen kann, dass eine erhöhte Speichernutzung existiert, aber nicht weiss, in welchen Situationen.

97/2000/2002/2003 /e
/automation Startet Excel im sogenannten Automationsmodus.

In diesem Modus werden keine
- Dateien aus dem/den Startordner/n XlStart geöffnet (z.B. Personl.xls)
- Dateien aus dem zusätzlichen Startordner geöffnet
- Add-Ins geladen
- Meldungsdialoge (Hinweise, Fehlermeldungen usw.) angezeigt
- Programmroutinen ausgeführt, die gewöhnlich im normalen Modus ablaufen

In diesem Modus wird jedoch die xlb-Datei mit den benutzerdefinierten Symbolleisten, Schaltflächen und Menübefehlen geladen. Auch eine neue, leere Arbeitsmappe wird geöffnet.

Hinweis
Dieser Parameter entspricht dem Modus, der beim Ansteuern von Excel mittels Office Automation verwendet wird. Es gibt jedoch einen wichtigen Unterschied: Wenn Sie eine Änderung an einer Symbolleiste vornehmen, so wird diese Änderung beim Beenden von Excel in der xlb-Datei vermerkt. Bei der Programmsteuerung mittels Office Automation ist dies nicht der Fall.

Beachten Sie auch, dass im Add-In-Manager die von Ihnen verwendeten Add-Ins wie im normalen Modus als 'geladen' angezeigt werden (CheckBox ist aktiviert), obwohl keine Add-Ins geladen sind.

Der Parametername kann nicht abgekürzt werden. Wenn man anstelle von '/automation' lediglich '/a' schreibt, startet Excel ganz normal (wie wenn kein Parameter verwendet würde). Schreibt man beispielsweise '/auto', so startet Excel normal, wobei eine Fehlermeldung eingeblendet wird, dass die Datei "u.xls" nicht gefunden werden konnte.

Achtung
Microsoft Excel 2002 besitzt einen Bug. Der Parameter sollte eigentlich bewirken, dass keinerlei Add-Ins geladen werden, also auch keine COM Add-Ins. Das ist in Excel 2002 ohne Service Packs und Excel 2002 mit Service Pack 2 jedoch nicht der Fall. Dieses Problem wurde erst im Microsoft Office XP Service Pack 2 (SP-2) behoben.

Weitere Informationen siehe hier:
XL2002: The '/Automation' Command-Line Switch Does Not Disable COM Add-in Programs
http://support.microsoft.com/?scid=kb;EN-US;320058

97/2000/2002/2003 /automation
/m Startet Excel mit einer neuen Arbeitsmappe, die ein einzelnes Makroblatt enthält. 97/2000/2002/2003 /m
/i Startet Excel mit maximiertem Anwendungsfenster (Vollbild).

Wichtig
In den Microsoft-Dokumentationen ist lediglich erwähnt, dass durch den Parameter das Fenster der Anwendung zum Vollbild vergrössert wird. Der Parameter bewirkt jedoch noch einiges mehr:

- Es werden nur die beiden Default-Symbolleisten 'Standard' und 'Format' angezeigt sowie die von Add-Ins generierten Symbolleisten.
- Es werden keine Add-Ins geladen, ausser die xla-Datei eines Add-Ins befindet sich im Startordner XlStart.
- Wenn sich eine Add-In-Datei im Startordner XlStart befindet und dieses Add-In eine Änderung an einer Symbolleiste vornimmt, so wird beim Beenden von Excel die xlb-Datei überschrieben (siehe auch weiter unten).
- Die von einem Add-In durchgeführten Anpassungen an Symbolleisten werden wie gewohnt angezeigt.
- Die Standard-Arbeitsmappe Mappe.xlt wird ignoriert.
- Es wird eine neue, leere Mappe angezeigt, welche die Werksvorgabeeinstellungen (Factory Default Settings) verwendet.
- Die Registry-Einträge mit benutzerspezifischen Einstellungen werden ignoriert.
- Der Standardarbeitsordner wird ignoriert.

Beachten Sie auch, dass im Add-In-Manager nur die Standard Add-Ins aufgelistet werden und keines davon aktiviert ist. Wenn Sie Excel mit dem Parameter '/i' starten und dann im Add-In-Manager ein Add-In aktivieren, so geht diese Einstellung beim Beenden verloren. Beim nächsten Start ist das Add-In somit nicht mehr aktiviert.

Achtung
Beachten Sie unbedingt, dass dieser Parameter die xlb-Datei durch eine neu erstellte xlb-Datei ersetzt, falls ein Add-In eine Änderung an einer Symbolleiste vornimmt. Das bedeutet, dass beim Beenden einer mit dem Parameter '/i' gestarteten Excel-Anwendung Ihre persönliche xlb-Datei gelöscht wird. Dadurch gehen sämtliche benutzerdefinierten Anpassungen an Symbolleisten unwiderruflich verloren. Mehr über die xlb-Datei erfahren Sie unter "Fragen und Antworten: Welche Hintergrund-Informationen gibt es über die xlb-Datei von Excel?".

Excel berücksichtigt zudem nur das erste Zeichen des Parameters. Wenn Sie also zum Beispiel '/init', '/irgendwas' oder '/I:\Daten\Testmappe.xls' anstelle von '/i' angeben, wird dies immer als '/i' betrachtet. Der Parameter ist insofern äusserst gefährlich, da beispielsweise bei '/I:\Daten\Testmappe.xls' nicht - wie man meinen könnte - die angegebene Arbeitsmappe vom Laufwerk I: geöffnet wird. Dies, weil vor dem Laufwerkbuchstabe 'I' ein Schrägstrich (/) steht. Das Gefährliche daran ist, dass in diesem Fall bei irrtümlicher Verwendung des Schrägstriches die xlb-Datei gelöscht wird (siehe vorangegangener Abschnitt).

Hinweis
Dieser Parameter existiert ausschliesslich in Excel 97. Er kann allerdings auch bei Excel 2000, Excel 2002 und Excel 2003 angegeben werden, nur besitzt er in diesen Programmversionen keine Wirkung und erzeugt auch keine Fehlermeldung. Der Vorteil ist, dass Sie den Parameter einsetzen können, auch wenn Sie nicht wissen, welche Excelversion auf dem Rechner installiert ist.

Ich nehme an, dass der Parameter-Buchstabe "i" für "Init" bzw. "Initialize" steht. Die Auswirkungen des Parameters entsprechen auf jeden Fall denen einer Initialisierung. In Excel ab Version 2000 steht kein Parameter mit vergleichbarer Funktionalität zur Verfügung.

97 /i
/o Startet Excel und erstellt die Registry-Einträge neu.

Insbesondere der Schlüssel
  HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel
wird neu geschrieben ('x' steht für die Excelversion 8, 9, 10 bzw. 11).

Hinweis
Wenn der oben angegebene Registry-Schlüssel ungültige Werte enthält, werden diese nicht korrigiert. Der Parameter '/o' trägt nur fehlende Werte ein.

97/2000/2002/2003 /o
/p <Ordner> Startet Excel und legt den aktuellen Arbeitsordner fest.

Der dem Startparameter '/p' mitgegebene Ordner wird anstelle des Standardarbeitsordners verwendet. Der Standardarbeitsordner wird im Dialogfeld Optionen (Menü Extras) auf der Registerkarte Allgemein im Eingabefeld Standardarbeitsordner festgelegt.

Wenn der angegebene Ordner nicht existiert, wird automatisch der ursprüngliche Standardarbeitsordner von Microsoft Excel verwendet. Wenn der Benutzer für den angegebenen Ordner nur ungenügende Zugriffsberechtigungen besitzt, d.h. "Kein Zugriff" oder nur "Lesen", wird ebenfalls automatisch der Standardarbeitsordner verwendet. Wenn jedoch der Ordner schreibgeschützt oder versteckt ist (Ordner-Attribute "Schreibgeschützt" bzw. "Versteckt"), so wird er trotzdem als aktuellen Arbeitsordner festgelegt.

Wenn der Ordnerpfad ein oder mehrere Leerzeichen enthält, muss der gesamte Ordnername in Hochkommas angegeben werden. Als Alternative ohne Hochkommas kann der Ordnerpfad in der MS DOS-Schreibweise angegeben werden (z.B. C:\Progra~1\Micros~1\Vorlagen).

97/2000/2002/2003 /p C:\NeueDaten
/r <Pfadname/Dateiname> Startet Excel und öffnet die angegebene Datei schreibgeschützt ('r' steht für readonly). Der schreibgeschützte Dateimodus wird in der Titelleiste des Arbeitsmappenfensters mit dem Hinweis "[Schreibgeschützt]" angegeben. 97/2000/2002/2003 /r C:\Daten\Test.xls
/s, /safemode, /safe Startet Excel im abgesicherten Modus (Safe Mode).

Der abgesicherte Modus ist im Fenstertitel des Excel-Anwendungsfensters am Hinweis "Abgesicherter Modus" zu erkennen (im englischen Excel steht "Safe Mode"). Der abgesicherte Modus startet Excel wie wenn Excel unmittelbar nach der Installation zum ersten Mal aufgestartet wird.

Im abgesicherten Modus wird folgendes ignoriert:
- Alle Dateien im Startordner XlStart und dem zusätzlichen Startordner.
- Alle Add-Ins, wobei im Add-In-Manager die Add-Ins als aktiviert angezeigt werden, aber dennoch keines dieser Add-Ins geladen wird.
- Benutzerdefinierte Symbolleisten und geänderte integrierte Symbolleisten, da die Datei Excel.xlb bzw. <Benutzer>.xls nicht geladen wird.
- Alle excelspezifischen Registry-Informationen. Es werden stattdessen die Default-Einstellungen verwendet (Werksvorgabe-Einstellungen).

Beachten Sie, dass im Optionen-Dialogfenster die Default-Einstellungen angezeigt werden, und nicht die von Ihnen üblich benutzen Einstellungen.

Hinweis
- Der Parameter '/s' funktioniert in allen Excelversionen, d.h. Excel 97, Excel 2000, Excel 2002 und Excel 2003.

- Der Parameter '/safemode' funktioniert ausschliesslich in Excel 2002. Wenn Sie Excel 97 oder Excel 2000 mit '/safemode' starten, wird zwar der abgesicherte Modus aktiviert; es erscheint jedoch die Fehlermeldung, dass die Datei "afemode.xls" nicht gefunden werden konnte.
- Der Parameter '/safe' funktioniert in Excel 2002 sowie den anderen Programmen von Microsoft Office XP, jedoch nicht in Excel 97 und Excel 2000. Wenn Sie Excel 97 oder Excel 2000 mit '/safe' starten, wird zwar der abgesicherte Modus aktiviert; es erscheint jedoch die Fehlermeldung, dass die Datei "afe.xls" nicht gefunden werden konnte.

97/2000/2002/2003: /s
2002: /safemode
2002: /safe
/s
/regserver Startet Excel und registriert die Anwendung neu. Excel wird nach der Neuregistrierung automatisch beendet.

Verwenden Sie diesen Parameter, wenn Sie möchten, dass Microsoft Excel alle Registry-Schlüssel neu generiert und die Dateizuordnungen zu Exceldateien wie Arbeitsmappen (xls), Vorlagen (xlt) usw. neu erstellt.

97/2000/2002/2003 /regserver
/unregserver Startet Excel und löscht die Registrierung der Anwendung. Excel wird danach automatisch beendet.

Anmerkung des Autors
Der Name des Parameters "unregserver" ist doch ziemlich ungewöhnlich. Er ist abgeleitet vom englischen Verb "to unregister", welches in Dokumentationen häufig anzutreffen ist. Das Ungewöhnliche daran ist, dass es das Wort "unregister" eigentlich gar nicht gibt. Das korrekte englische Wort lautet "deregister". Sie glauben das nicht? Dann probieren Sie mal "unregister" im Wörterbuch LEO (http://dict.leo.org) oder Dictionary.com (www.dictionary.com) zu finden.

97/2000/2002/2003 /unregserver

To Top

 


Unterschiede bei den verschiedenen Excel-Versionen

Die gängigen Excel-Versionen Excel 97, Excel 2000, Excel 2002/XP und Excel 2003 besitzen die gleichen Startparameter. Es gibt nur gerade drei kleinere Unterschiede bei bestehenden Parameter. Betroffen sind die Parameter '/i', '/s' und '/e'.

 

Startparameter '/i'

In Microsoft Excel 97 gibt es den Parameter '/i' zum maximieren des Anwendungsfensters zum Vollbild, der in den neueren Versionen Excel 2000, 2002/XP und 2003 nicht mehr existiert. Genauer gesagt existiert der Parameter schon noch, nur besitzt er keine Wirkung mehr, da er Excel-intern deaktiviert wurde. Das bedeutet, dass beim Start von Excel 2000, Excel 2002/XP und Excel 2003 bei Verwendung des Parameters '/i' das Anwendungsfenster nicht mehr zum Vollbild maximiert wird, aber auch keine Fehlermeldung auftritt, da wie erwähnt der Parameter zwar erkannt aber nicht mehr verarbeitet wird. Der Vorteil ist, dass der Parameter '/i' verwendet werden kann, auch wenn Sie nicht wissen, welche Excelversion auf dem Rechner installiert ist.

Bitte beachten Sie unbedingt, dass der Startparameter '/i' nicht nur das Anwendungsfenster als Vollbild anzeigt, sondern noch einiges mehr bewirkt. Es ist sogar möglich, dass die Datei, welche die benutzerdefinierten Anpassungen an Symbolleisten enthält (xlb-Datei), ohne Warnung überschrieben wird. Dadurch gehen sämtliche Symbolleisten-Änderungen unwiderruflich verloren. Mehr dazu siehe unter Parameter '/i'.

Weitere Informationen finden Sie unter Parameter '/i'.

 

Startparameter '/s'

Geringfügig geändert wurde der Startparameter zur Aktivierung des abgesicherten Modus (Safe Mode). Neben dem bekannten Parameter '/s' stehen neu auch die beiden Parameter '/safe' und '/safemode' zur Verfügung, die den gleichen Zweck wie '/s' besitzen.

Übrigens besitzt Microsoft Excel ab Version 2002 nebst dem Safe Mode einen weiteren Ausführungsmodus; den so genannten "Minimal-Load Mode". Bei diesem Modus lädt Excel nur das absolute Minimum an Programmteilen in den Speicher, die zur Ausführung der Anwendung zwingend benötigt wird. Für die Aktivierung des Minimal-Load Mode existiert meines Wissens kein Startparameter; wobei es irgend etwas in der Art geben muss, da der Modus sonst ja nicht aktiviert werden könnte. Dieser Modus wird von Excel verwendet, falls der Programmstart im abgesicherten Modus nicht ordnungsgemäss durchgeführt werden konnte. Das bedeutet, dass bei nicht erfolgreichem Start im Safe Mode sich Excel automatisch beendet und erneut - diesmal im Minimal-Load Mode - startet.

Weitere Informationen finden Sie unter Parameter '/s'.

 

Startparameter '/e'

Der Parameter '/e' verhält sich bei Microsoft Excel 97 in einer bestimmten Situation anders als bei den neueren Versionen Excel 2000, Excel 2002/XP und Excel 2003. Wenn unmittelbar nach dem Parameter ein beliebiges Zeichen angegeben wird, beispielsweise ein weiterer Schrägstrich "/e/" oder irgend ein Buchstabe, dann wird Microsoft Excel 97 nicht als Anwendungstask sondern als Prozess gestartet, d.h. das Excel-Anwendungsfenster bleibt nach dem Start verborgen. Bei Microsoft Excel 2000, 2002/XP und 2003 ist dies nicht der Fall. Diese neueren Programmversionen starten Microsoft Excel nur dann als Prozess, wenn der (wenig bekannte) Parameter '/embedded' benutzt wird.

Weitere Informationen finden Sie unter Parameter '/e'.

To Top

 


Inoffizielle, nicht dokumentierte Startparameter

Startparameter '/d'

Es existiert ein Startparameter, der weder in einer Excel-Dokumentation noch in der Microsoft Knowledge Base erwähnt ist. Es handelt sich um den Parameter '/d'. Der Zweck dieses Parameters ist mir leider nicht bekannt, dafür aber seine Auswirkungen.

Folgendes Verhalten tritt bei Verwendung des Buchstabens "d" als Startparameter auf:
- Nach dem vollständigen Aufstarten von Microsoft Excel ist die Anwendung gesperrt.
- Excel wird normal ausgeführt, und man kann die Anwendung auch in der Taskliste deaktivieren und aktivieren.
- Es ist jedoch nicht möglich, das Anwendungsfenster, eine Symbolleiste, eine Zelle oder irgend ein anderes Objekt anzuklicken.
- Der Mauszeiger wird permanent als Sanduhr angezeigt.

In einem älteren Artikel auf www.pcwelt.de wird vermutet, dass das "d" für Demomodus steht.

 

Weitere Startparameter

Diese Buchstaben des Alphabets werden von Excel als gültige Startparameter angesehen:

e, d, i, m, o, p, r und s

Alle anderen, nicht für einen Parameter verwendete einzelne Buchstaben des Alphabets besitzen beim Programmstart keine Auswirkung und werden, wenn in der Befehlszeile angegeben, von Excel einfach ignoriert. Es erscheint auch keine Fehlermeldung. Es handelt sich um diese Buchstaben:

a, b, c, f, g, h, j, k, l, n, q, t, u, v, w, x, y und z

 

Anmerkung des Autors
Es ist durchaus möglich, dass es weitere undokumentierte Startparameter gibt, da ein Parametername auch zwei und mehr Buchstaben lang sein kann, wie es bei '/automation' und '/regserver' der Fall ist. Ich selbst habe nur Parameter mit einer Länge von einem Buchstaben ausprobiert.

To Top

 


Excel im Vollbildmodus starten

Microsoft Excel 97
Microsoft Excel 97 konnte man anhand des Parameters '/i' im Vollbildmodus starten. Dadurch wurde das Anwendungsfenster zum Vollbild vergrössert. Der Einsatz dieses Parameters ist zwar nicht zu empfehlen, da er viele Nebenwirkungen besitzt (siehe Kapitel Übersicht der Excel-Startparameter und Unterschiede bei den verschiedenen Excel-Versionen). Dennoch führte er zum gewünschten Ergebnis, nämlich zu einem maximierten Anwendungsfenster.

Microsoft Excel 2000, 2002 und 2003
Seit Excel 2000 gibt es den Parameter '/i' nicht mehr, und es gibt auch keinen anderen Parameter, mit dem man Excel im Vollbildmodus starten kann. Die Frage lautet daher: Welche andere Möglichkeiten gibt es? Nun, es existieren zwei Möglichkeiten:
1. Sie verwenden eine Datei-Verknüpfung
2. Sie ändern einen Eintrag in der Windows Registry

Nachfolgend werden die beiden Möglichkeiten kurz vorgestellt.

 

Datei-Verknüpfung verwenden

Anhand einer Datei-Verknüpfung (lnk-Datei) lässt sich Microsoft Excel sehr einfach im Vollbildmodus ausführen. Legen Sie dazu eine Verknüpfung zur Programmdatei Excel.exe an und stellen Sie die Eigenschaft "Ausführen" auf "Maximiert" (siehe Abbildung).

Datei-Verknüpfung mit Excel
Abbildung: Datei-Verknüpfung mit Excel

 

Registry-Eintrag von Excel ändern

Durch vorgängiges Ändern eines bestimmten Eintrages in der Windows Registry können Sie das Anwendungsfenster von Microsoft Excel im Vollbildmodus öffnen. Der Registry-Eintrag heisst "Maximized" und steuert den Fenstermodus.

Zweig: HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel\Options *
Eintrag: Maximized (Typ "DWORD")
Wert: Öffnet das Anwendungsfenster im normalen Fenstermodus und das Arbeitsmappenfenster im Vollbildmodus

* x steht für die Excel-Versionsnummer 8, 9, 10 oder 11.

 

Stellen Sie den Eintrag auf den Wert 3, damit beim Start sowohl das Anwendungsfenster als auch die neue, leere Arbeitsmappe im Vollbildmodus geöffnet wird. Nebst dem Wert 3 gibt es andere erlaubte Werte. Hier die Übersicht:

Wert Beschreibung
0 Öffnet das Anwendungsfenster und das Arbeitsmappenfenster im normalen Fenstermodus
1 Öffnet das Anwendungsfenster im Vollbildmodus und das Arbeitsmappenfenster im normalen Fenstermodus
2 Öffnet das Anwendungsfenster im normalen Fenstermodus und das Arbeitsmappenfenster im Vollbildmodus
3 Öffnet das Anwendungsfenster und das Arbeitsmappenfenster im Vollbildmodus

 

Wie Sie den Registry-Eintrag anhand eines Programms oder Skripts automatisiert ändern konnen, erfahren Sie hier:

Weitere Informationen

Fragen und Antworten: Wie lässt sich Excel mit einer bestimmten Fenstergrösse und -position starten?

To Top

 


Eigene Excel-Startparameter definieren

Gelegentlich wird in Excel Newsgoups und Diskussionsforen die Frage gestellt, ob man der Anwendung Microsoft Excel auch eigene Parameter übergeben kann. In der Regel soll dadurch erreicht werden, dass der Programmablauf in einem Auto_Open-Makro gesteuert wird.

Standardmässig kennt Excel nur seine vordefinierten Startparameter (siehe Kapitel Übersicht der Excel-Startparameter). Es existiert jedoch eine Möglichkeit, beliebige andere Parameter zu definieren. Dazu wird ein bisschen VBA-Code benötigt, der beim Öffnen einer Arbeitsmappe die zum Excelstart verwendete Befehlszeile abfragt. Microsoft Excel besitzt mehrere Schalter und Parameter, anhand denen man die Programmausführung steuern kann. Wenn man beispielsweise in der Befehlszeile nach dem Namen der Programmdatei Excel.exe eine Arbeitsmappendatei angibt, so wird diese Datei beim Programmstart geöffnet. Mit dem Startparameter "/e" dagegen kann man erreichen, dass das Startfenster nicht eingeblendet und keine neue, leere Mappe angelegt wird.

Wenn man eigene Startparameter definieren möchte, so kann man dazu den Startparameter "/e" gewissermassen 'missbrauchen'. Es ist übrigens der einzige Parameter, bei dem Microsoft Excel zulässt, dass nach dem Parametername (d.h. nach dem Buchstabe "e") weitere Zeichen folgen. Bei allen anderen Startparametern ist die Angabe von weiteren Zeichen nicht möglich, da diese entweder ignoriert werden oder zu einer Fehlermeldung beim Excelstart führen.

Ausführen-Dialog
Abbildung: Ausführen-Dialog von Windows

Die zum Starten eines Windows-Programmes benutzte Befehlszeile kann anhand der Windows API-Funktion GetCommandLine ausgelesen werden. Bei Microsoft Excel funktioniert dies ebenfalls. Da eine Arbeitsmappe bekanntlich ein VBA-Projekt besitzen und somit VBA-Programmcode aufnehmen kann, braucht man nur VBA-Code zu schreiben, mit dem die Befehlszeile ausgelesen wird. Die Abfrage der Befehlszeile erfolgt vorzugsweise in der Workbook_Open-Ereignisprozedur einer Arbeitsmappe, damit beim Öffnen der Arbeitsmappe auf allfällig mitgegebene Parameter reagiert werden kann.

Beachten Sie unbedingt, dass bei der Verwendung eines selbst definierten Parameters immer eine gültige, existierende Exceldatei mitgegeben werden muss. Anderenfalls kann es passieren, vor allem in Microsoft Excel 97, dass die Anwendung zwar gestartet wird, aber das Anwendungsfenster von Excel nicht sichtbar wird. Für einen Benutzer ist dies nur schwer erkennbar, weil Excel in diesem Fall als Prozess und nicht als Anwendungs-Task ausgeführt wird.

Nachfolgend wird der dazu benötigte VBA-Programmcode vorgestellt. Die Funktion StringFromPointer ist eine Hilfsfunktion und wird verwendet, um den auf die Befehlszeile zeigenden Pointer in eine Zeichenfolge umzuwandeln.

 

VBA-Programmcode

Fügen Sie den gesamten nachstehenden VBA-Code in das Modul "DieseArbeitsmappe" einer Arbeitsmappe ein und speichern Sie die Mappe.

'Deklarationsbereich von Modul 'DieseArbeitsmappe'
Private Declare Function GetCommandLine& Lib "kernel32" Alias "GetCommandLineA" ()
Private Declare Function lstrlen Lib "kernel32" (ByVal str As Long) As Long
Private Declare Function lstrcpy Lib "kernel32" (ByVal dest As String, ByVal src As Long) As Long

'Modul 'DieseArbeitsmappe'

Private Sub Workbook_Open()
  Dim strCommandLine As String

  Dim intPosition As Integer
  'Befehlszeile auslesen
  strCommandLine = StringFromPointer(GetCommandLine())
  'Prüfen, ob "/e/" in der Befehlszeile enthalten ist
  intPosition = InStr(LCase(strCommandLine), "/e/")
  If intPosition > 0 Then
    '"/e/" wurde gefunden, daher Text nach "/e/" ausgeben

    strCommandLine = Mid$(strCommandLine, intPosition + 3)
    MsgBox "Es wurde die Zeichenfolge '" & strCommandLine & "' übergeben."
  Else
    '"/e/" wurde nicht gefunden

    MsgBox "Es wurde keine Zeichenfolge übergeben."
  End If
End Sub

'Modul 'DieseArbeitsmappe'

Private Function StringFromPointer(plngString As Long) As String
  Dim strResult As String

  Dim lngNumber As Long
  lngNumber = lstrlen(plngString)
  strResult = String(lngNumber, 0)
  lstrcpy strResult, plngString
  If InStr(strResult, Chr(0)) <> 0 Then
    strResult = Left$(strResult, InStr(strResult, Chr(0)) - 1)
  End If
  StringFromPointer = strResult
End Function

 

VBA-Programmcode aufrufen

Der Programmcode wird aufgerufen, indem Sie Microsoft Excel mit der Befehlszeilensyntax

  <Programmdatei> <Arbeitsmappendatei> /e/<Zeichenfolge>

ausführen. Ein Beispiel einer Befehlszeile:

  "C:\Programme\Microsoft Office\Excel.exe" "C:\Daten\EineMappe.xls" /e/Info

Der Ausführen-Dialog von Windows sieht somit so aus:

Ausführen-Dialog
Abbildung: Ausführen-Dialog von Windows

 

VBA-Programmcode anpassen

Anstelle der im obigen Programmcode verwendeten Anweisung

  MsgBox "Es wurde die Zeichenfolge '" & strCommandLine & "' übergeben."

können Sie die Zeichenfolge auswerten und entsprechend ihrem Inhalt unterschiedlich reagieren. Zum Beispiel können Sie bei Angabe von "Info" eine Info-Fenster einblenden und bei "Open" den Datei öffnen-Dialog anzeigen:

  If strCommandLine = "Info" Then
    frmInfo.Show
  ElseIf strCommandLine = "Open" Then
    Application.Dialogs(xlDialogOpen).Show
  End If

 

Mögliche Probleme

Wenn Sie die übergebene Zeichenfolge dazu benutzen möchten, ein bestimmtes Arbeitsblatt zu aktivieren, so sollten Sie den obigen Programmcode nicht in die Ereignisprozedur Workbook_Open sondern in ein Makro namens Auto_Open einfügen. Vor allem dann, wenn die Möglichkeit besteht, dass die Arbeitsmappe mit Microsoft Excel 97 geöffnet wird (d.h. nicht mit Excel 2000 oder neuer). Excel 97 besitzt nähmlich einen Bug, der verhindert, dass im Workbook_Open-Ereignis ein bestimmtes Arbeitsblatt aktiviert werden kann.

Mehr über dieses Problem erfahren Sie hier:
  XL97: Open Event Macro May Not Activate a Worksheet
  http://support.microsoft.com/?scid=kb;en-us;174319

 

Weitere Informationen über selbst definierte Startparameter und Codebeispiele finden Sie hier:

Weitere Informationen

Fragen und Antworten: Kann man eigene Start-Parameter definieren?

Fragen und Antworten: Kann man Microsoft Excel auch starten, ohne dass das Anwendungsfenster erscheint?

VBA-Codebeispiele: Eigene Start-Parameter verwenden

To Top

 


Alternativen zu eigenen Excel-Startparametern

Eigene, dass heisst selbst definierte Startparameter sind eine vorzügliche Lösung, wie man den Excel-Programmstart beziehungsweise das Öffnen einer Arbeitsmappe steuern und bestimmte Aktionen auslösen kann. Es kann aber sein, dass man gar keine Möglichkeit hat, Excel mit einem Startparameter aufzurufen. Zum Beispiel, wenn der Ausführen-Dialog von Windows nicht zur Verfügung steht, weil Sie bzw. der Windows-Benutzer nicht genügend Rechte zum Ausführen von Programmen besitzt.

Es existiert jedoch eine Alternative: Anstatt die Befehlszeile nach Parametern zu untersuchen, kann man anhand von VBA-Programmcode feststellen, ob bzw. welche Tasten beim Excelstart - genauer gesagt beim Öffnen der Arbeitsmappe - gedrückt wurden. Auf diese Weise kann man beispielsweise eine bestimmte Aktion ausführen (z.B. ein Benutzerformular öffnen), falls der Benutzer die Strg-Taste gedrückt hat.

Alles zu diesem Theme finden Sie hier:

Weitere Informationen

Fragen und Antworten: Wie finde ich heraus, ob eine Spezialtaste beim Öffnen einer Mappe gedrückt wurde?

Tastenkombinationen: Eigene Tastenkombinationen definieren und auswerten

To Top

 


Weitere Informationsquellen

Die folgenden Microsoft Knowledge Base-Artikel beschreiben die Startparameter von Microsoft Excel. Sie enthalten allerdings keine Informationen, die nicht bereits auf dieser Seite vorgestellt sind:

XL97: Startup Switches for Microsoft Excel 97
http://support.microsoft.com/?kbid=159474

XL2000: Startparameter von Microsoft Excel 2000
http://support.microsoft.com/?scid=kb;de;211481
XL2000: Startup Switches for Microsoft Excel 2000
http://support.microsoft.com/?scid=kb;en-us;211481

XL2002/XL2003: Startup Switches for Microsoft Excel
http://support.microsoft.com/?kbid=291288

 

Hier die Startoptionen von Microsoft Word:

WD: Word-Startoptionen (Befehlszeilenoptionen) und ihre Verwendung
http://support.microsoft.com/?scid=kb;de;210565
WD: How to use startup command line switches to start Word 2003, Word 2002, and Word 2000
http://support.microsoft.com/?scid=kb;en-us;210565

 

Interessant sind auch die Befehlszeilenparameter des Windows Explorers:

Befehlszeilenparameter für den Windows Explorer
http://support.microsoft.com/?scid=kb;de;130510
Command-Line Switches for Windows Explorer
http://support.microsoft.com/?scid=kb;en-us;130510

To Top

Fragen, Anregungen oder Hinweise? Mail senden an: philipp_von_wartburg@yahoo.de

Zuletzt aktualisiert am 14.02.2011 / 12:00 Uhr
© 2002-2011 by Philipp von Wartburg, Schweiz
Alle Rechte vorbehalten