Excel parallel benutzen

<< Click to Display Table of Contents >>

Navigation:  Technische Informationen >

Excel parallel benutzen

Previous pageReturn to chapter overviewNext page

Hintergrund

 

Da das Programm eine Excel-Anwendung ist, muss sichergestellt sein, dass es keine Probleme bei der gleichzeitigen Nutzung des Programms mit anderen Excel-Dateien auftreten.

 

Dies ist leider nicht möglich. Dies hat mehrere Gründe:

1.die Anwendung ist inzwischen so groß, dass Excel ohne KlientenDB ca 20-50 MB Arbeitsspeicher, mit KlientenDB aber 150 bis 200 MB Speicher in Anspruch nimmt. Dabei scheint Excel bei der gleichzeitigen Benutzung anderer Dateien überfordert zu sein, was auch beim Öffnen sehr vieler Excel-Dateien auftreten kann.

2.da ab Excel2013 alle Excel-Dateien in einer Programminstanz laufen, beeinflussen sich die Dateien: wenn in einer Datei ein Dialog geöffnet ist, sind auch alle anderen Dateien für die Bearbeitung gesperrt, selbst wenn der Dialog nur sichtbar ist, wenn man in der Liste der Dateien die aufrufende Datei anzeigen lässt. Das hat zur Folge, dass z.B. bei geöffnetem Klientendatenfenster jede andere Excel-Datei gesperrt ist, bis das Fenster wieder geschlossen ist.

 

Das alles liegt daran, dass seit Excel 2013 alle Dateien in einer Programm-Instanz geöffnet werden, aber eigene Fenster bekommen (deshalb auch eigene Menüleisten haben können).

In Excel 2010 sollte es eigentlich kein Problem sein, da dort standardmäßig bei jedem Klick auf eine Excel-Datei im Explorer eine neue Instanz geöffnet wird.

 

Lösung:

 

Zwingt man Excel dazu, eine neue Programm-Instanz zu öffnen, verhalten sich alle Dateien unabhängig voneinander. Am einfachsten ist die unter 1. beschriebene Menthode, die man zum Standard an den Arbeitsplätzen erheben kann, an denen viel mit Excel gearbeitet wird.

 

Methoden

1KlientenDB geht immer in einer neuen Instanz auf! Deshalb läuft alles gut, wenn man die erst KlientenDB öffnet, wenn Excel schon läuft. Jede weitere angeklickte Excel-Datei wird dann in der unabhängigen ersten Instanz geöffnet.

2wenn die KlientenDB zuerst geöffnet wurde, kann man das Öffnen einer zweiten Instanz erzwingen:

aDoppelklick auf das Excel-Symbol in der Taskleiste mit gehaltener Alt-Taste bzw. Alt+Umschalt-Taste (ausprobieren!)

bim Suchfeld der Startleiste eingeben: „excel.exe /x“ -> öffnet neue instanz

cein Link zu Excel „Excel eigene Instanz“ auf Desktop ablegen, der als Startparameter „/x“ hat

dDatei über das „Öffnen“-Menü der freien Instanz öffnen

eDatei im Explorer über das Kontextmenü „Senden an“ -> „neue Excelinstanz.vbs“ öffnen

 

Im Bild ist der Taskmanager, der zeigt, dass 4 Excel-Instanzen geöffnet wurden, davon 2 * KlientenDB und zwei  normale Excel-Dateien über die verschiedenen Methoden.

 

Man kann die Effektivität der Methoden bei sich prüfen, indem man im Taskmanager nachsieht. Dabei sollte die KlientenDB möglichst nicht die erste Excel-Instanz sein (siehe auch Speicherverbrauch: KlientenDB so um 170 MB, ansonsten braucht Excel 20 bis 70 MB je nach Dateizahl).

 

clipExcelinstanzen

 

 

Da es mehrere Methoden sind, ist es sicher sinnvoll, sich eine oder zwei Methoden auszusuchen und anzugewöhnen.

Z.B. erst Excel starten und danach die KlientenDB starten. Die erste Excel-Instanz bleibt dann als Container für neue Dateien den ganzen Tag geöffnet.