Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Excel 2007 Global verfügbare Funktion erstellen

Frage Microsoft Microsoft Office

Mitglied: MartinAD

MartinAD (Level 1) - Jetzt verbinden

26.06.2008, aktualisiert 27.06.2008, 15631 Aufrufe, 7 Kommentare, 1 Danke

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
Mitglied: hpbruns
26.06.2008 um 14:26 Uhr
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
Bitte warten ..
Mitglied: bastla
26.06.2008 um 14:37 Uhr
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
Bitte warten ..
Mitglied: MartinAD
26.06.2008 um 14:39 Uhr
Hallo Hans-Peter,

danke erstmal für die Antwort.

Ich habe das auch gleich versucht, leider nicht mit dem gewünschten Erfolg.
Das Ergebnis ist gleich mit dem Speichern der Datei unter c:\Programme\MS Office\XLSTART.

Wenn ich eine bestehende Excel Datei Öffne, dann wird 1. die Datei Personal.XLSB geöffnet und 2. zusätzlich die Datei die ich eigentlich öffnen wollte. Ich habe also immer 2 geöffnete Dateien, was ich nicht will.

Habe ich was falsch gemacht?

Danke + Gruss
Martin

EDIT:

Hallo bastla,

leider bringt die Methode wie eben beschrieben nicht den gewünschtn Erfolg, vllt. mache ich auch etwas falsch. Die Funktion lässt sich übrigens ohne angabe des Dateinamens starten (wenn die Makro-Datei zusätzlich geöffnet ist, was ich aber nicht will), wahrscheinlich weil sie "public" definiert wurde.

Mit einem Add-In habe ich es schon probiert, mein Add-In konnte ich auch einbinden, aber trotzdem steht die Funktion nicht zur Verfügung. Ich weis ehrlich gesagt auch nicht warum.
Bitte warten ..
Mitglied: bastla
26.06.2008 um 14:46 Uhr
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
Bitte warten ..
Mitglied: hpbruns
26.06.2008 um 16:00 Uhr
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
Bitte warten ..
Mitglied: MartinAD
27.06.2008 um 06:28 Uhr
Guten Morgen,

das Problem ist gelöst - dank eurer Hilfe!

Hier mein Lösungsweg:

- 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
- Wenn ich eine Excel Datei starte wurde die Personal.xlsb mitgeladen und angezeigt, das habe ich unterbunden, indem ich bei "Ansicht" aus "ausblenden" gegangen bin.
- Die Funktion kann ich nun aus einer beliebigen Excel Datei aufrufen mit dem Syntax: "=PERSONAL.XLSB!SummeWennFarbe($Argumente)"

Danke nochmal für die Hilfe an alle

Gruß
Martin
Bitte warten ..
Mitglied: Made750
23.03.2010 um 12:29 Uhr
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

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
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
Excel 2007: Sortierung ohne ins Datenblatt zu springen (2)

Frage von JoSiBa zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel 2007 und der Cosinus (3)

Frage von Henere zum Thema Microsoft Office ...

Microsoft Office
Excel 2007 jedes Fenster in extra Instanz (7)

Frage von xbast1x zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...