In einer meiner Formen wird auf einmal ein Makro nicht mehr gefunden. Wenn ich das Makro manuell starte, läuft das problemlos durch. Die Fehlermeldung legt nahe, dass der Makrospeicherort in der Datenbank nicht gefunden wird. In anderen Formen funktioniert das aber?? Ideen dazu?
Möglicherweise findest Du es unter [DeinDocument.odb] > Standard > Datenauswahl
während es aber unter [Meine Makros] > Standard > Datenauswahl gesucht wird.
Hi Villeroy,
In der Fehlermeldung sollte mit “location: application” m.E. gemeint sein, dass er unter der Datenbank (=application) sucht. Dort findet das Programm das Makro nicht. Wenn ich manuell den Pfad auf (MeinDocument.odb>Standard usw.) stelle, läuft das Makro durch.
Die Frage ist, warum sucht das Programm vermutlich nur unter [Meine Makros]? Früher hat es das nicht gemacht und bei Makros in anderen Formen meiner Datenbank greift das Programm problemlos auf die Makros unter [MeinDokument.odb usw.] zu.
Erklären kann ich nicht, warum das Makro nicht gefunden wird.
Aber die Trivial-Lösung funktioniert auch hier:
Wenn ich das Makro in der Form erst rauslösche und dann neu verknüpfe steht zwar vorher wie nachher der gleiche Verknüpfungstext (“Standard.Datenauswahl.mac_Mineral2_auswählen”), aber jetzt findet das Programm das Makro.
“application” meint nicht “die Datenbank”, im Gegenteil.
location=application meint immer “My Macros” oder seltener auch “LibreOffice Macros”. Die Libraries unter “My Macros” sind in Deinem Benutzerprofil gespeichert, “LibreOffice Macros” sind die vorinstallierten Libraries, die mit LO ausgeliefert sind. Man kann mit etwas Aufwand auch selber “LibreOffice Macros” hinzufügen, die dann allen Nutzern des Systems zur Verfügung stehen.
Die Alternative location=document meint immer das jeweilige Dokument, also das Datenbankdokument in diesem Fall. Andere Möglichkeiten gibt es nicht für StarBasic-Makros.
Die Library “Standard” existiert sowohl unter “My Macros” als auch in jedem Dokument, nicht aber in “LibreOffice Macros”. “LibreOffice Macros” und “My Macros” bilden denselben Namensraum. Du kannst auch keine Library “Tools” zu “My Macros” hinzufügen weil dieser Name schon in “LibreOffice” existiert. Du kannst aber eine Library “Tools” zu jedem Dokument hinzufügen.
Du hattest wahrscheinlich vorher einen Aufruf von “My Macros”.Standard.Datenauswahl.mac_Mineral2_auswählen und hast dann umgestellt auf “Dokument.odb”.Standard.Datenauswahl.mac_Mineral2_auswählen.