Excel 2007 Global verfügbare Funktion erstellen
Hallo an die Community,
ich habe eine Frage und hoffe das mir ein Excel-Kenner weiterhelfen kann .
Situation ist folgende.
Ich habe in meine bestehende Excel 2007 Datei eine Funktion eingebaut. Diese existiert als public definierte function in einem bas-modul, das ich im VBA Editor mit Excel 2007 erstellt habe.
Wenn der Benutzer in der Excel Datei nun die Funktionseingabe mit "=" in einer Zelle startet, taucht meine Funktion in der Liste auf und ich kann sie verwenden.
Problem ist folgendes:
Ich möchte diese Funktion für sämtliche Excel 2007 Dateien zumindest auf dem selben Computer verfügbar machen. Das heißt: einer neu erstellten oder bestehenden Excel Datei soll diese Funktion verfügbar sein.
Ich habe bereits probiert diese Funktion über Add-Ins einzubauen, was nicht funktioniert hat. Ich habe auch bereits versucht die Excel-Datei im XLSTART Verzeichnis zu platzieren, damit die Funktion immer geladen wird wenn sich Excel öffnet. Das hat auch nicht geklappt, da sich dann immer auch die Excel-Datei mit dem Makro öffnet.
Kennt jemand das Problem und hat einen Denkanstoss für mich?
Vielen Dank im Voraus, beste Grüsse
Martin
ich habe eine Frage und hoffe das mir ein Excel-Kenner weiterhelfen kann .
Situation ist folgende.
Ich habe in meine bestehende Excel 2007 Datei eine Funktion eingebaut. Diese existiert als public definierte function in einem bas-modul, das ich im VBA Editor mit Excel 2007 erstellt habe.
Wenn der Benutzer in der Excel Datei nun die Funktionseingabe mit "=" in einer Zelle startet, taucht meine Funktion in der Liste auf und ich kann sie verwenden.
Problem ist folgendes:
Ich möchte diese Funktion für sämtliche Excel 2007 Dateien zumindest auf dem selben Computer verfügbar machen. Das heißt: einer neu erstellten oder bestehenden Excel Datei soll diese Funktion verfügbar sein.
Ich habe bereits probiert diese Funktion über Add-Ins einzubauen, was nicht funktioniert hat. Ich habe auch bereits versucht die Excel-Datei im XLSTART Verzeichnis zu platzieren, damit die Funktion immer geladen wird wenn sich Excel öffnet. Das hat auch nicht geklappt, da sich dann immer auch die Excel-Datei mit dem Makro öffnet.
Kennt jemand das Problem und hat einen Denkanstoss für mich?
Vielen Dank im Voraus, beste Grüsse
Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 90722
Url: https://administrator.de/contentid/90722
Ausgedruckt am: 16.11.2024 um 03:11 Uhr
7 Kommentare
Neuester Kommentar
Hallo Martin
Du kannst Makros/Funktionen in einer "Persönlichen" Arbeitsmappe speichern. Diese wird unter dem Namen "PERSONAL.XLSB" im Vereichniss C:\Dokumente und Einstellungen\USER\Anwendungsdaten\Microsoft\Excel\XLSTART abgelegt. Am einfachsten läßt Du Dir ein Macro aufzeichnen und wählst als Speicherort die Persönliche Mappe aus.
Gruß
Hans-Peter
Du kannst Makros/Funktionen in einer "Persönlichen" Arbeitsmappe speichern. Diese wird unter dem Namen "PERSONAL.XLSB" im Vereichniss C:\Dokumente und Einstellungen\USER\Anwendungsdaten\Microsoft\Excel\XLSTART abgelegt. Am einfachsten läßt Du Dir ein Macro aufzeichnen und wählst als Speicherort die Persönliche Mappe aus.
Gruß
Hans-Peter
Hallo MartinAD und willkommen im Forum!
Ob der hier beschriebene Weg über ein Add-In auch in Excel2007 noch funktioniert, müsstest Du selbst ausprobieren (habe kein 2007er zur Hand; mit 2003 klappt's).
Der Nachteil der Methode mit einer automatisch gestarteten Mappe (sei es "PERSONL.XLS" oder die Variante mit dem "XLSTART"-Verzeichnis) ist, dass Du für die Verwendung der Funktion auch den Namen der Mappe mit angeben müsstest (ist zumindest bis zu Excel2003 so); ansonsten könntest Du das störende Fenster (analog zur "PERSONL.XLS") einfach ausblenden.
Grüße
bastla
Ob der hier beschriebene Weg über ein Add-In auch in Excel2007 noch funktioniert, müsstest Du selbst ausprobieren (habe kein 2007er zur Hand; mit 2003 klappt's).
Der Nachteil der Methode mit einer automatisch gestarteten Mappe (sei es "PERSONL.XLS" oder die Variante mit dem "XLSTART"-Verzeichnis) ist, dass Du für die Verwendung der Funktion auch den Namen der Mappe mit angeben müsstest (ist zumindest bis zu Excel2003 so); ansonsten könntest Du das störende Fenster (analog zur "PERSONL.XLS") einfach ausblenden.
Grüße
bastla
Hallo MartinAD!
In 2003 gibt es den Menüpunkt "Fenster / Ausblenden", welcher dafür sorgt, dass zB die "PERSONL.XLS" (wie die "PERSONAL.XLSB" in dieser Version noch heißt) "unsichtbar" geöffnet wird. Das "Ausblenden" bezieht sich dabei immer auf das gerade aktive Excel-Fenster.
[Edit] Nur der Vollständigkeit halber: Bis 2003 genügt auch die Deklaration der Function als "Public" nicht - es muss (außer bei der Variante "Add-In") immer die Schreibweise "Dateiname.xls!Funtionsname(Argument)" verwendet werden. [/Edit]
Grüße
bastla
In 2003 gibt es den Menüpunkt "Fenster / Ausblenden", welcher dafür sorgt, dass zB die "PERSONL.XLS" (wie die "PERSONAL.XLSB" in dieser Version noch heißt) "unsichtbar" geöffnet wird. Das "Ausblenden" bezieht sich dabei immer auf das gerade aktive Excel-Fenster.
[Edit] Nur der Vollständigkeit halber: Bis 2003 genügt auch die Deklaration der Function als "Public" nicht - es muss (außer bei der Variante "Add-In") immer die Schreibweise "Dateiname.xls!Funtionsname(Argument)" verwendet werden. [/Edit]
Grüße
bastla
Hallo Martin
ich nochmal
Das 2 Dateien geöffnet werden hat schon seine Richtigkeit.
Wenn Du die Datei PERSONAL manuell erstellst und abspeicherst musst Du diese, wie von bastla beschrieben ausblenden.
Lässt Du die Datei von Excel bei der Aufzeichnung eines Macros erstellen, blendet Excel diese automatisch aus. Was bedeutet, das, wen Du Änderungen vornehmen musst/möchtest, diese Arbeitsmappe wieder über Fenster/Einblenden sichtbar gemacht werden muss. Und nachher natürlich auch wieder unsichtbar.
Was das AddIn angeht, frag ich jetzt mal ganz blöd. Wird es im AddIn-Manager angezeigt?
Gruß
Hans-Peter
ich nochmal
Das 2 Dateien geöffnet werden hat schon seine Richtigkeit.
Wenn Du die Datei PERSONAL manuell erstellst und abspeicherst musst Du diese, wie von bastla beschrieben ausblenden.
Lässt Du die Datei von Excel bei der Aufzeichnung eines Macros erstellen, blendet Excel diese automatisch aus. Was bedeutet, das, wen Du Änderungen vornehmen musst/möchtest, diese Arbeitsmappe wieder über Fenster/Einblenden sichtbar gemacht werden muss. Und nachher natürlich auch wieder unsichtbar.
Was das AddIn angeht, frag ich jetzt mal ganz blöd. Wird es im AddIn-Manager angezeigt?
Gruß
Hans-Peter
Zitat von @MartinAD:
- Die Fuktion wurde in einem Modul in der Datei PERSONAL.XLSB gespeichert
- Die Datei PERSONAL.XLSB habe ich im XLSTART Verzeichnis unter c:\programme\MS Office 200\XLSTART gespeichert
- Die Fuktion wurde in einem Modul in der Datei PERSONAL.XLSB gespeichert
- Die Datei PERSONAL.XLSB habe ich im XLSTART Verzeichnis unter c:\programme\MS Office 200\XLSTART gespeichert
Vielen Dank, euch allen für das gelöste Problem
Bei meinem Problem wurde die PERSONAL.XLSB (Excel 2007) beim Start von Excel nicht geladen.
Nun habe ich die PERSONAL.XLSB vom Benutzer-Startup Verzeichnis (C:\Users\User\AppData\Roaming\Microsoft\Excel\XLSTART\)
ins Excel-Startup Verzeichnis (C:\Program Files\Microsoft Office\Office12\XLSTART\) kopiert
Nun werden die Makros geladen und angezeigt
Gruss
Made750