Xl 2003 / vba : personl.xls

Hallo zusammen.

Ich habe mir ein Kalender-Formular in meiner PERSONL.XLS erstellt.
Dieses Formular soll in mehreren „normalen“ XL-Dateien angewendet werden.

Ich habe den Verweis auf die PERSONL.XLS aktiviert, bekomme aber trotzdem keinen Zugriff auf das Formular.

Weiß jemand, ob und wie das geht?

Vielen Dank für Eure Hilfe

Gruß
Carsten

Hallo Carsten,

Ich habe mir ein Kalender-Formular in meiner PERSONL.XLS
erstellt.

was genau meinst du damit, eine Userform oder was?

Dieses Formular soll in mehreren „normalen“ XL-Dateien
angewendet werden.
Ich habe den Verweis auf die PERSONL.XLS aktiviert

? Wie macht man denn einen Verweis auf die personl.xls?
Verweise setzt man auf dll usw., aber doch nicht auf eine xls-Datei!?

Die personl.xls ist inhaltlich eine ganz normale xls-Datei.
Du kannst auch eine beliebige xls-Datei in das Startverzeichnis von Excels stellen dann hast du die gleiche Funktionalität wie mit (d)einer personl.xls.
Eine Winzigkeit ist anders aber die spielt an sich keine Rolle.

, bekomme
aber trotzdem keinen Zugriff auf das Formular.

Solange ich nicht weiß was du damit meinst, kann ich nix zu sagen.

Gruß
Reinhard

Hallo Reinhard.

was genau meinst du damit, eine Userform oder was?

Ja, eine UserForm

? Wie macht man denn einen Verweis auf die personl.xls?
Verweise setzt man auf dll usw., aber doch nicht auf eine
xls-Datei!?

Im VB-Editor, Menü „Extras“ > „Verweise“ > „VBA-Projekt“ (bzw. Code-Name der Personl.xls)

Eine Winzigkeit ist anders aber die spielt an sich keine Rolle.

Die Winzigkeiten sind immer das Wichtigste.

Gruß Carsten

Hallo Carsten,

was genau meinst du damit, eine Userform oder was?

Ja, eine UserForm

? Wie macht man denn einen Verweis auf die personl.xls?
Verweise setzt man auf dll usw., aber doch nicht auf eine
xls-Datei!?

Im VB-Editor, Menü „Extras“ > „Verweise“ > „VBA-Projekt“
(bzw. Code-Name der Personl.xls)

Stimmt, kannte ich nicht, weiß gar nicht was das bringt, muß ich mich schlau machen.

Eine Winzigkeit ist anders aber die spielt an sich keine Rolle.

Die Winzigkeiten sind immer das Wichtigste.

In dem Fall hatte ich nur vor Augen daß wenn du ein Makro aufzeichnest gefragt wirst ob du es in die Personl.xls speichern willst.

Zurück zum wichtigeren, deiner Anfrage.

Da habe ich derzeit noch null Plan, muß mal schauen, vielleicht komme ich auch auf keine Lösung, denn alles was ich grad eben mal so angetestet habe lief schief.

Gruß
Reinhard

Hallo Reinhard.

denn alles, was ich grad eben mal so angetestet habe, lief schief.

Das geht mir auch immer so :smile:

Gruß Carsten

Hallo Carsten,

denn alles, was ich grad eben mal so angetestet habe, lief schief.

Das geht mir auch immer so :smile:

naja, wenn ich Code so hinschreibe und der funktioniert sofort, dann werde ich sehr mißtrauisch *gg*
Wenn er nicht gleich klappt, das ist Normalzustand, dann arbeite ich mich halt von Fehlermeldung zu fehlermeldung weiter :smile:

Da ich mit all meinen Versuchen die userform direkt aufzurufen scheiterte habe ich halt mal höheren Ortes nachgefragt.
Die Lösung kam von Hajo, http://hajo-excel.de/ obwohl ich vorher schon an Run dachte, aber war zu faul das auszuprobieren, deshalb fragte ich erstmal nach ob es überhaupt geht Userforms aus Fremddateien anzuzeigen.

Die Lösung ist, stelle in ein Modul deiner personl.xls diesen Code:

Sub nn()
UserForm1.Show 0
End Sub

Dann kannst du das aus jeder anderen Datei heraus aufrufen mit:

Sub dd()
Application.Run „Personl.xls!nn“
End Sub

Analog dazu kannst du dir ja jetzt leicht Code basteln um die UF ggfs. wieder auszublenden.

Gruß
Reinhard

Hallo Reinhard.

Vielen Dank dafür.

Jetzt stelle ich mir natürlich die Frage, ob es bei bei einer so „umständlichen“ Methode nicht einfacher ist, das Formular weiterhin in jede Datei zu importieren, in der ich es brauche (so wie ich es bisher immer gemacht habe)

Viele Grüße
Carsten

Jetzt stelle ich mir natürlich die Frage, ob es bei bei einer
so „umständlichen“ Methode nicht einfacher ist, das Formular
weiterhin in jede Datei zu importieren, in der ich es brauche
(so wie ich es bisher immer gemacht habe)

Hi Carsten,

soll das nur auf deinem jeden Rechner laufen, wenn auch auf anderen Rechnern, wieviele? Kriegen die es hin sich eine personl.xls zu basteln und dann deine UF un dggfs. ein Modul zu importieren?

Obwohl, du mußt denen die keien personl.xls haben ja nur eine zuschicken, die müssen sie ja nur ins richtige Verzeichnis packen.

Aber bleiben wir mal bei deinem PC. Es macht schon Sinn die UF in der personl.xls zu haben und sie über ein dortiges Kurzmakro ein-oder auszublenden.

Damit dir diese Funktionalität in jeder beliebigen Datei zur Verfügung steht ohne daß du pro Datei noch was machen mußt erzeueg ein neues Symbol und weise dem das Makro in der personl.xls zu.

Das Erzeugen geht easy, oben Rechtsklick neben das Fragezeichen, „Anpassen“ auswählen, dann "„Befehle“, dort links in der Liste „Makro“ auswählen, rechts das Mondgesicht dann goch neben das Fragezeichen „Ziehen“, Rechtsklick auf das neue Symbol, makro zuweisen…
Ggfs da noch die frabe des Symbols abändern, vielleicht grün für UF zeigen und rot für UF ausblenden,fertig.

Natürlich müssen die beiden makros dafür schon vorher in einem Modul der personl.xks stehen.

Wenn an Fremd-PCs unsichere Kandidaten sitzen in Bezug auf Excelumgang, schicke denen nach beendigung einfach deine excel?.xlb,
dadrin ist die geänderte menuleiste versteckt.
Das Fragezeichen steht für unterschiedliche Excelversionen.
Schau halt un welchem Verzeichnis deine Excewl.xlb steht und wo deine Personl.xls, genau dahin müssen sie auch bei Fremdrechnern.

Der Pfad kann je nach Version leicht unterschiedlich sein.

Gruß
Reinhard

Hallo Reinhard.

soll das nur auf deinem jeden Rechner laufen, wenn auch auf
anderen Rechnern, wieviele? Kriegen die es hin sich eine
personl.xls zu basteln und dann deine UF un dggfs. ein Modul
zu importieren?

Nein. Alles was ich bastele, mache ich ausschließlich für mich.
Ich habe mir längst abgewöhnt für andere etwas zu programmieren.
Einzige Ausnahme ist hier, wenn ich 'mal einen Beitrag lese, dessen Problemstellung mich selbst interessiert.

Es ist aber eine definitive Tatsache, daß mich dieser ganze blöde
Programmier-Kram über die Jahre nur unendlich viel Zeit gekostet hat und letztendlich zu überhaupt nichts geführt hat, außer vielleicht, daß ich hier und da 'mal ein Problemchen lösen konnte, das ich ohne Computer nie gehabt hätte.

Viele Grüße
Carsten