{"id":55000639,"date":"2008-12-01T00:00:00","date_gmt":"2021-02-11T21:23:53","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=639"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Bibliotheksdatenbanken","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/","title":{"rendered":"Bibliotheksdatenbanken"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>In diesem sechsten und vorerst letzten Beitrag rund um das Thema Verweise geht es um Bibliotheksdatenbanken. Dieser Beitrag zeigt Ihnen, wann und warum Sie Ihren Code in eine Bibliothek auslagern sollten und worauf Sie achten m&uuml;ssen, damit es keine Probleme mit dem Verweis auf Ihre Bibliothek gibt.<\/b><\/p>\n<p>Jeder Entwickler, der mehr als eine Access-Anwendung erstellt hat, baut mit der Zeit einen Fundus von Funktionen auf, die er immer wieder einsetzt. Doch wie verwaltet, verwendet und wartet man eine solche Funktionssammlung am besten<\/p>\n<p><b>Warum Bibliotheksdatenbanken<\/b><\/p>\n<p>Stellen Sie sich folgende Situation vor: Sie haben einige Funktionen rund um Datei- und Pfadangaben geschrieben und diese in einem Modul zusammengefasst. In jeder Anwendung, die Sie schreiben, ben&ouml;tigen Sie wohl irgendwann diese Dateifunktionen und importieren dazu jeweils das entsprechende Modul in die Datenbank.<\/p>\n<p>Nun stellen Sie bei einer der in diesem Modul enthaltenen Funktionen einen Fehler fest und korrigieren ihn in der betreffenden Datenbank. Das eigentliche Problem ist, dass der Fehler auch in allen anderen Datenbanken mit diesem Modul enthalten ist und Sie dieses nun an allen Stellen ersetzen m&uuml;ssen, was schnell zu Inkonsistenzen f&uuml;hren kann.<\/p>\n<p>Es hat sich als praktisch herausgestellt, solche immer wieder verwendeten Funktionen in einer einzigen Datenbank zu sammeln. Diese Bibliotheksdatenbank k&ouml;nnen Sie nun als Verweis in andere Anwendungen einbinden. Damit stehen alle Funktionen dieser Bibliothek auch in weiteren Anwendungen zur Verf&uuml;gung (siehe Bild 1).<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23298_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 1: H&auml;ufig verwendete Funktionen werden in einer Bibliothek geb&uuml;ndelt und als Verweis eingebunden.<\/span><\/b><\/p>\n<p>Dieses Vorgehen hat folgende Vorteile: Alle Standardfunktionen sind an einer Stelle verf&uuml;gbar. Erweiterungen und Fehlerbereinigungen m&uuml;ssen daher nur einmal an einer Stelle durchgef&uuml;hrt werden. Dadurch, dass die Bibliothek nur in andere Anwendungen eingebunden ist, k&ouml;nnen Sie auch keine Anwendung bei der Aktualisierung vergessen.<\/p>\n<p>Ein weiterer Vorteil liegt darin, dass es jede Ihrer Bibliotheks-Funktionen nur genau ein einziges Mal gibt. Es kommt n&auml;mlich nicht selten vor, dass sich ein und dieselbe Funktion in verschiedenen Anwendungen unterschiedlich entwickelt. Sp&auml;testens, wenn das Modul durch blo&szlig;es Kopieren aus einer anderen Anwendung aktualisiert wird, kann es zu Problemen kommen.<\/p>\n<p>Die Verwendung einer Bibliotheksdatenbank birgt aber auch Gefahren. Dadurch, dass Sie alle Funktionen an einer Stelle konzentriert haben, wirkt sich eine &auml;nderung unter Umst&auml;nden auf viele Anwendungen aus. Zu welchen Wechselwirkungen es dabei kommt, kann schwer vorhergesagt werden. Aus diesem Grund sollten Sie tief greifende &auml;nderungen einer Bibliotheks-Funktion sehr gut testen.<\/p>\n<p><b>Vorsicht: Zirkelbez&uuml;ge<\/b><\/p>\n<p>Sie k&ouml;nnen Verweise auf andere Datenbanken setzen. Diese wiederum k&ouml;nnen Verweise auf weitere Datenbanken beinhalten (siehe Bild 2). Generell ist ein solches Vorgehen m&ouml;glich.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23305_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 2: Verweise auf andere Datenbanken sind m&ouml;glich.<\/span><\/b><\/p>\n<p>Sie sollten das aber vermeiden. Zum einen wird es schnell un&uuml;bersichtlich, zum anderen besteht die Gefahr des Zirkelbezugs (siehe Bild 3).<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23312_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 3: Zirkelbez&uuml;ge in den Verweisen kann Access nicht aufl&ouml;sen.<\/span><\/b><\/p>\n<p>Von einem Zirkelbezug spricht man, wenn ein Verweis direkt oder indirekt auf die urspr&uuml;ngliche Datenbank zur&uuml;ckverweist. Einen Zirkelbezug kann Access nicht aufl&ouml;sen. Sie werden in einem solchen Fall mit einer Fehlermeldung gewarnt.<\/p>\n<p><b>.mdb oder .mde<\/b><\/p>\n<p>Grunds&auml;tzlich k&ouml;nnen Sie Ihre Bibliotheksdatenbank als <b>.mdb<\/b>&#8211; oder als <b>.mde<\/b>-Datei speichern und einbinden. Bei der Wahl des Formats gibt es zwei Dinge zu beachten. Da w&auml;re zum einen der Schutz Ihres Know-hows.<\/p>\n<p>Wenn Sie alle Ihre Funktionen in einer Bibliothek sammeln und diese als <b>.mdb<\/b>-Datei an Dritte weiterreichen, dann geben Sie damit Ihre komplette Funktionssammlung ungesch&uuml;tzt aus der Hand.<\/p>\n<p>Ihr Code ist f&uuml;r jeden einsehbar und kann durch jedermann angepasst und ge&auml;ndert werden.<\/p>\n<p>Neben dem Schutz des Know-hows gibt es noch einen weiteren Punkt zu beachten, das Speicherformat der Zielanwendung. Wenn die Anwendung, in die Ihre Bibliotheksdatenbank als Verweis eingebunden werden soll, als <b>.mdb<\/b>-Datei vorliegt, k&ouml;nnen Sie dort eine <b>.mdb<\/b>-Datei und auch eine <b>.mde<\/b>-Datei als Verweis einbinden.<\/p>\n<p>Wird Ihre Bibliothek hingegen in eine Anwendung eingebunden, die als <b>.mde<\/b>-Datei daher kommt, dann k&ouml;nnen Sie wiederum nur eine <b>.mde<\/b>-Datei einbinden. Ein Verweis auf eine <b>.mdb<\/b>-Datei f&uuml;hrt in einem solchen Fall zu einem Fehler.<\/p>\n<p><b>Vorsicht mit .mde-Bibliotheken<\/b><\/p>\n<p>Aus dem bisher Gesagten k&ouml;nnte der Eindruck entstehen, dass Sie Ihre Bibliotheks-Datenbanken immer als <b>.mde<\/b>-Datei speichern sollten und damit alle Probleme beseitigt seien. Dies stimmt aber leider nicht ganz. Die Verwendung einer <b>.mde<\/b>-Datei als Bibliothek kann auch zu Fehlern f&uuml;hren.<\/p>\n<p>Solche Fehler treten in folgender Konstellation auf. Sie verwenden eine Bibliotheksdatenbank, diese liegt als <b>.mde<\/b>-Datei vor und ist als Verweis in eine Anwendung eingebunden. Auch diese Anwendung liegt als <b>.mde<\/b>-Datei vor.<\/p>\n<p>Jetzt &auml;ndern Sie den Code in der Bibliotheksdatenbank und speichern diese erneut als <b>.mde<\/b>-Datei.<\/p>\n<p>Wenn Sie nun die Anwendung starten und dort eine Funktion aufrufen, deren Code in der Bibliotheksdatenbank gespeichert ist, quittiert Access dies mit einer Fehlermeldung (siehe Bild 4).<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23334_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 4: Eine ge&auml;nderte .mde-Datei f&uuml;hrt in der Anwendung zu einem Fehler.<\/span><\/b><\/p>\n<p><!--30percent--><\/p>\n<p>Die L&ouml;sung dieses Problems ist relativ einfach: Nachdem Sie die Bibliotheksdatenbank erneut als <b>.mde<\/b>-Datei gespeichert haben, m&uuml;ssen Sie auch die Anwendung erneut in eine <b>.mde<\/b>-Datei umwandeln &#8211; beide m&uuml;ssen neu kompiliert werden.<\/p>\n<p><b>Das Kind braucht einen Namen<\/b><\/p>\n<p>Im Verweise-Dialog sind alle Bibliotheken &uuml;ber einen Namen eindeutig zu identifizieren. Die Frage ist, welchen Namen Ihre Bibliotheksdatenbank erh&auml;lt und wie Sie diesen Namen beeinflussen k&ouml;nnen.<\/p>\n<p>Als Name f&uuml;r den Verweis wird bei einer Bibliotheksdatenbank der Name des VBA-Projekts verwendet. Diesen Namen k&ouml;nnen Sie anpassen. &Ouml;ffnen Sie dazu die Bibliotheksdatenbank. Im VBA-Editor w&auml;hlen Sie aus dem Men&uuml; den Befehl <b>Extras <\/b>und dort den Eintrag <b>Eigenschaften von &lt;Projektname&gt;<\/b> (siehe Bild 5). Hier passen Sie jetzt den Projektnamen an. Zus&auml;tzlich k&ouml;nnen Sie eine Projektbeschreibung eingeben. Diese Projektbeschreibung kann &uuml;ber die Eigenschaft <b>Description <\/b>eines <b>Reference<\/b>-Objektes wieder ausgelesen werden.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23341_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 5: &Uuml;ber den Namen des VBA-Projekts bestimmen Sie den Namen des Verweises.<\/span><\/b><\/p>\n<p>An dieser Stelle verhalten sich Verweise, die Sie &uuml;ber eine Type-Library eingebunden haben, anders als Verweise auf ein VBA-Projekt. Bei einer Type-Library ist die Eigenschaft <b>Description <\/b>verantwortlich f&uuml;r den angezeigten Namen des Verweises im Verweise-Dialog. Dieser kann deutlich vom eigentlichen Namen des Verweises abweichen.<\/p>\n<p>Bei einem Verweis auf ein VBA-Projekt entsprechen sowohl der angezeigte Name im <b>Verweise<\/b>-Dialog als auch der Name des Verweises dem Namen des VBA-Projekts.<\/p>\n<p>Manchmal kommt es vor, dass Sie beim Versuch, einen Verweis auf eine Bibliotheksdatenbank einzuf&uuml;gen, mit einer Fehlermeldung konfrontiert werden. Access meldet dann <b>Name steht in Konflikt mit vorhandenem Modul, Projekt oder vorhandener Objektbibliothek<\/b>. In diesem Fall existiert entweder bereits ein Verweis mit dem Namen der einzuf&uuml;genden Bibliothek oder ihr Name ist identisch mit dem Namen des aktuellen VBA-Projekts.<\/p>\n<p>Um solche Situationen zu vermeiden, sollten Sie immer darauf achten, dass Sie das VBA-Projekt eindeutig benennen. Access legt ja selbstst&auml;ndig einen Namen f&uuml;r das VBA-Projekt fest, und dabei wird zun&auml;chst der Dateiname der Datenbank verwendet. Wenn man bedenkt, dass viele Datenbanken am Anfang etwa <b>db1.mdb <\/b>hei&szlig;en und dann sp&auml;ter umbenannt werden, wird schnell klar, woher solche Namenskonflikte stammen.<\/p>\n<p><b>Praktische Hinweise<\/b><\/p>\n<p>Der VBA-Editor unterst&uuml;tzt Sie bei der Arbeit mit eingebundenen Bibliotheksdatenbanken. Sie k&ouml;nnen jederzeit in den VBA-Code der Bibliotheksdatenbank wechseln, ohne dazu die Anwendung verlassen zu m&uuml;ssen.<\/p>\n<p>Probieren Sie es einfach aus. &Ouml;ffnen Sie dazu die Beispieldatenbank mit dem Namen <b>MyApp.mdb<\/b>. Lassen Sie sich dort den VBA-Code zur Schaltfl&auml;che <b>cmdMyButton<\/b> anzeigen. Platzieren Sie den Cursor in den Aufruf der Funktion <b>MyFunction<\/b>. &Ouml;ffnen Sie als N&auml;chstes das Kontextmen&uuml; mit der rechten Maustaste und w&auml;hlen Sie den Befehl <b>Definition<\/b>.<\/p>\n<p>Im VBA-Editor wird nun das Modul mit dem Namen <b>mdl_MyModul <\/b>angezeigt. Dieses Modul stammt aus der Bibliotheksdatenbank. Der Cursor befindet sich am Beginn der Prozedur <b>MyFunction<\/b>.<\/p>\n<p>Dass Sie sich wirklich im Code der Bibliotheksdatenbank befinden, k&ouml;nnen Sie auch am Fenstertitel des VBA-Editors sehen. Dort werden Ihnen jeweils der Name des bearbeiteten Moduls und der Name der Datenbank, in dem dieses Modul gespeichert ist, angezeigt.<\/p>\n<p>Sie k&ouml;nnen auch &uuml;ber den Projekt-Explorer auf die Module der Bibliotheksdatenbank zugreifen (siehe Bild 6). Zum &Ouml;ffnen des Projekt-Explorers w&auml;hlen Sie aus dem Men&uuml; <b>Ansicht<\/b> den gleichnamigen Befehl. Alternativ k&ouml;nnen Sie auch die Tastenkombination <b>Strg + R <\/b>verwenden.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2008_06\/Verweise-web-images\/Bild23348_opt.jpeg\" alt=\"missing image file\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 6: Der Projekt-Explorer erm&ouml;glicht den Zugriff auf die Module einer Bibliotheksdatenbank.<\/span><\/b><\/p>\n<p>Der Zugriff auf den Code der Bibliotheksdatenbank ist ideal f&uuml;r das Debugging. Sie k&ouml;nnen einen Haltepunkt im VBA-Code setzen und dann Zeile f&uuml;r Zeile durch den Code navigieren. Dabei wird auch in den Code der Bibliotheksdatenbank gewechselt.<\/p>\n<p>Diese M&ouml;glichkeit, den VBA-Code der Bibliotheksdatenbank zu bearbeiten, hat leider einen entscheidenden Nachteil. &auml;nderungen, die Sie am Code der Bibliotheksdatenbank vornehmen, werden nur w&auml;hrend der Ausf&uuml;hrung der Anwendung ber&uuml;cksichtigt. Diese &auml;nderungen werden aber unter Access nicht dauerhaft in der Bibliotheksdatenbank gespeichert.<\/p>\n<p>Die M&ouml;glichkeit, auf den VBA-Code zuzugreifen und diesen zu bearbeiten, ist also nur zum Zweck des Debuggings geeignet. Wenn Sie auf diesem Weg einen Fehler gefunden haben, k&ouml;nnen Sie die notwendige &auml;nderung des VBA-Codes nur ausprobieren. Am Ende m&uuml;ssen Sie die Bibliotheksdatenbank direkt &ouml;ffnen und die Korrektur des VBA-Codes dort vornehmen.<\/p>\n<p class=\"zwischen-berschrift-oberer-spaltenrand\">Verweisprobleme vermeiden<\/p>\n<p>Nachdem Sie jetzt etwa alle regelm&auml;&szlig;ig genutzten Funktionen in eine Bibliotheksdatenbank ausgelagert und diese als Verweis in Ihre Anwendung eingebunden haben, gilt es zu &uuml;berlegen, wie Sie Dateiprobleme mit dem Verweis auf die Bibliotheksdatenbank vermeiden k&ouml;nnen.<\/p>\n<p>Solange Sie die Anwendung nur auf Ihrem eigenen Rechner betreiben, stellt sich das Problem weniger. Wenn Sie aber Ihre Anwendung, und damit auch Ihre Bibliotheksdatenbank, an Dritte weitergeben, beginnt das Problem mit den Verweisen erneut.<\/p>\n<p>Sie werden wahrscheinlich selten die Situation antreffen, dass dort genau dieselbe Verzeichnisstruktur vorhanden ist, wie auf Ihrem Rechner. Wie k&ouml;nnen Sie dann vermeiden, dass Ihre Anwendung nicht richtig funktioniert, weil der Verweis auf die Bibliotheksdatenbank nicht aufgel&ouml;st werden kann<\/p>\n<p><b>Eintrag in der Registry<\/b><\/p>\n<p>Um dieses Problem zu l&ouml;sen, haben Sie grunds&auml;tzlich zwei M&ouml;glichkeiten. Die erste M&ouml;glichkeit liegt in der Nutzung der Registry. F&uuml;gen Sie in den Ordner <b>HKLM\\Software\\Microsoft\\Office\\x.0\\Access <\/b>einen Ordner mit dem Namen <b>RefLibPaths <\/b>ein. In diesem Ordner legen Sie einen Schl&uuml;ssel mit dem Namen Ihrer Bibliotheksdatenbank an. Als Wert tragen Sie den Pfad zur Bibliotheksdatenbank ein. Ein Schritt-f&uuml;r-Schritt-Beispiel f&uuml;r diese L&ouml;sung finden Sie unter [2].<\/p>\n<p>Wie funktioniert die L&ouml;sung Auf der Suche nach einem Verweis pr&uuml;ft Access zuerst den Eintrag <b>RefLibPaths <\/b>in der Registry und l&auml;dt die Bibliotheksdatenbank gegebenenfalls von dem hier genannten Ort.<\/p>\n<p><b>Im richtigen Ordner speichern<\/b><\/p>\n<p>Die zweite M&ouml;glichkeit, um Verweisprobleme mit Bibliotheksdatenbanken zu vermeiden, ist, Ihre Bibliotheksdatenbank in den Ordner zu kopieren, in dem sich auch Ihre Anwendung befindet. Alternativ k&ouml;nnen Sie auch einen Unterordner des Anwendungsverzeichnisses verwenden. Warum diese L&ouml;sung funktioniert, k&ouml;nnen Sie unter [1] nachlesen. Wir haben dieses Thema auch im Beitrag <b>Defekte Verweise: Ursachen und L&ouml;sungen <\/b>(Shortlink 572) ausf&uuml;hrlich behandelt. Access durchforstet auf der Suche nach einem nicht gefundenen Verweis als letzte M&ouml;glichkeit das Verzeichnis, in dem sich die Access-Anwendung befindet, sowie alle zugeh&ouml;rigen Unterordner.<\/p>\n<p>Sie k&ouml;nnen sich auf einfache Art vergewissern, dass diese L&ouml;sung funktioniert. Legen Sie dazu im Windows-Explorer einen beliebigen Ordner an. In diesen Ordner kopieren Sie die beiden Beispieldatenbanken <b>MyApp.mdb <\/b>und <b>MyLib.mdb<\/b>. Die Datenbank <b>MyLib.mdb <\/b>ist als Verweis in die Datenbank <b>MyApp.mdb <\/b>eingebunden.<\/p>\n<p>Starten Sie jetzt <b>MyApp.mdb <\/b>und klicken Sie auf die Schaltfl&auml;che im angezeigten Formular. Wenn alles richtig funktioniert, erscheint ein Meldungsfenster. Nun verschieben Sie den Ordner an eine beliebige Stelle im Verzeichnisbaum. Starten Sie wieder <b>MyApp.mdb <\/b>und klicken Sie erneut auf die Schaltfl&auml;che. Sie werden wieder ein Meldungsfenster sehen. Wechseln Sie jetzt in den VBA-Editor und &ouml;ffnen Sie dort den Verweise-Dialog. Sie werden feststellen, dass Access den Pfad zum Verweis eigenst&auml;ndig an den neuen Ordner angepasst hat. Funktioniert dieses Vorgehen auch in einer <b>.mde<\/b>-Datei <\/p>\n<p>Dass dieses Vorgehen auch in einer <b>.mde<\/b>-Datei funktioniert, k&ouml;nnen Sie leicht selbst ausprobieren. Erstellen Sie dazu aus der Datenbank <b>MyLib.mdb <\/b>eine <b>.mde<\/b>-Datei. Binden Sie diese als Verweis in <b>MyApp.mdb <\/b>ein und wandeln Sie diese ebenfalls in eine <b>.mde<\/b>-Datei um. Verschieben Sie jetzt den Ordner mit der Anwendung und der Bibliothek an eine beliebige Stelle im Verzeichnisbaum und starten Sie die Anwendung. Wenn Sie auf die Schaltfl&auml;che klicken, erscheint das erwartete Meldungsfenster.<\/p>\n<p><b>Alternative Strategien<\/b><\/p>\n<p>Eine alternative Strategie f&uuml;r den Umgang mit h&auml;ufig genutzten Prozeduren w&auml;re, diese an einer einzigen Stelle zu verwalten und dann bei Bedarf in die jeweilige Anwendung zu kopieren. So h&auml;tten Sie den Vorteil, dass Sie Ihre Prozeduren nur an einer Stelle zu bearbeiten brauchen. Das Risiko, dass Ihre Bibliotheksdatenbank nicht gefunden wird, entf&auml;llt, da Sie keine Bibliothek als Verweis verwenden.<\/p>\n<p>Sie k&ouml;nnten eine solche Strategie durch den Einsatz eines Quellcodeverwaltungsprogramms wie etwa Visual Source Safe umsetzen. Dort besteht die M&ouml;glichkeit, Objekte gemeinsam zu nutzen.<\/p>\n<p>Dabei werden &auml;nderungen an einem Objekt automatisch in allen anderen Anwendungen nachgef&uuml;hrt. Eine weitere L&ouml;sung w&auml;re, dass Sie sich selbst ein kleines Programm schreiben, das die jeweils aktuelle Version eines Moduls in Ihre Anwendung kopiert, bevor Sie diese ausliefern.<\/p>\n<p><b>Zusammenfassung<\/b><\/p>\n<p>Durch den Einsatz einer Bibliotheksdatenbank steht Ihnen eine M&ouml;glichkeit zur Verf&uuml;gung, h&auml;ufig verwendete Prozeduren und Module effizient zu verwalten. Diese Bibliotheksdatenbank als <b>.mde<\/b>-Datei zu speichern, sch&uuml;tzt Ihr Know-how. Wenn Ihre Anwendung ebenfalls als <b>.mde<\/b>-Datei vorliegt, m&uuml;ssen Sie auch diese neu erstellen, wenn Sie die Bibliotheksdatenbank &auml;ndern.<\/p>\n<p>Sorgen Sie daf&uuml;r, dass das VBA-Projekt Ihrer Bibliothek einen entsprechenden Namen bekommt. Dieser wird als Name des Verweises &uuml;bernommen. Denken Sie auch daran, dass Sie den VBA-Code der Bibliothek aus Ihrer Anwendung heraus zwar &auml;ndern k&ouml;nnen, dass diese &auml;nderungen aber nicht dauerhaft sind. Probleme mit den Verweisen umgehen Sie am besten, indem Sie die Bibliotheksdatenbank im selben Ordner wie Ihre Anwendung speichern.<\/p>\n<p class=\"zwischen-berschriftquellen\">Quellen<\/p>\n<p class=\"quellen\">[1] KB 824255: So l&ouml;st Access Verweise auf. <a href=\"http:\/\/support.microsoft.com\/kb\/824255\/de\">http:\/\/support.microsoft.com\/kb\/824255\/de<\/a><\/p>\n<p class=\"quellen\">[2] RefLibPaths Schritt f&uuml;r Schritt: <a href=\"http:\/\/smsconsulting.spb.ru\/shamil_s\/topics\/testrefs.htm\">http:\/\/smsconsulting.spb.ru\/shamil_s\/topics\/testrefs.htm<\/a><\/p>\n<h3>Downloads zu diesem Beitrag<\/h3>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>MyApp.mdb<\/p>\n<p>MyLib.mdb<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/F55BE568-9B96-4A16-B454-911A0B486C2B\/aiu_639.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In diesem sechsten und vorerst letzten Beitrag rund um das Thema Verweise geht es um Bibliotheksdatenbanken. Dieser Beitrag zeigt Ihnen, wann und warum Sie Ihren Code in eine Bibliothek auslagern sollten und worauf Sie achten m&uuml;ssen, damit es keine Probleme mit dem Verweis auf Ihre Bibliothek gibt.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662008,66062008,44000025],"tags":[],"class_list":["post-55000639","post","type-post","status-publish","format-standard","hentry","category-662008","category-66062008","category-VBA_und_Programmiertechniken"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Bibliotheksdatenbanken - Access im Unternehmen<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bibliotheksdatenbanken\" \/>\n<meta property=\"og:description\" content=\"In diesem sechsten und vorerst letzten Beitrag rund um das Thema Verweise geht es um Bibliotheksdatenbanken. Dieser Beitrag zeigt Ihnen, wann und warum Sie Ihren Code in eine Bibliothek auslagern sollten und worauf Sie achten m&uuml;ssen, damit es keine Probleme mit dem Verweis auf Ihre Bibliothek gibt.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-11T21:23:53+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Minhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Minhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"12\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Bibliotheksdatenbanken\",\"datePublished\":\"2021-02-11T21:23:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/\"},\"wordCount\":2460,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg09.met.vgwort.de\\\/na\\\/bc7c5ca21c8f4591a38195ed5e2207a8\",\"articleSection\":[\"2008\",\"6\\\/2008\",\"VBA und Programmiertechniken\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/\",\"name\":\"Bibliotheksdatenbanken - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg09.met.vgwort.de\\\/na\\\/bc7c5ca21c8f4591a38195ed5e2207a8\",\"datePublished\":\"2021-02-11T21:23:53+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg09.met.vgwort.de\\\/na\\\/bc7c5ca21c8f4591a38195ed5e2207a8\",\"contentUrl\":\"http:\\\/\\\/vg09.met.vgwort.de\\\/na\\\/bc7c5ca21c8f4591a38195ed5e2207a8\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Bibliotheksdatenbanken\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bibliotheksdatenbanken\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"name\":\"Access im Unternehmen\",\"description\":\"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/access-im-unternehmen.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\",\"name\":\"Andr\u00e9 Minhorst Verlag\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"contentUrl\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"width\":370,\"height\":111,\"caption\":\"Andr\u00e9 Minhorst Verlag\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Bibliotheksdatenbanken - Access im Unternehmen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/","og_locale":"de_DE","og_type":"article","og_title":"Bibliotheksdatenbanken","og_description":"In diesem sechsten und vorerst letzten Beitrag rund um das Thema Verweise geht es um Bibliotheksdatenbanken. Dieser Beitrag zeigt Ihnen, wann und warum Sie Ihren Code in eine Bibliothek auslagern sollten und worauf Sie achten m&uuml;ssen, damit es keine Probleme mit dem Verweis auf Ihre Bibliothek gibt.","og_url":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/","og_site_name":"Access im Unternehmen","article_published_time":"2021-02-11T21:23:53+00:00","og_image":[{"url":"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"12\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Bibliotheksdatenbanken","datePublished":"2021-02-11T21:23:53+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/"},"wordCount":2460,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#primaryimage"},"thumbnailUrl":"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8","articleSection":["2008","6\/2008","VBA und Programmiertechniken"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/","url":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/","name":"Bibliotheksdatenbanken - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#primaryimage"},"thumbnailUrl":"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8","datePublished":"2021-02-11T21:23:53+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#primaryimage","url":"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8","contentUrl":"http:\/\/vg09.met.vgwort.de\/na\/bc7c5ca21c8f4591a38195ed5e2207a8"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Bibliotheksdatenbanken\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Bibliotheksdatenbanken"}]},{"@type":"WebSite","@id":"https:\/\/access-im-unternehmen.de\/#website","url":"https:\/\/access-im-unternehmen.de\/","name":"Access im Unternehmen","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access","publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/access-im-unternehmen.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/access-im-unternehmen.de\/#organization","name":"Andr\u00e9 Minhorst Verlag","url":"https:\/\/access-im-unternehmen.de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/","url":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","contentUrl":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","width":370,"height":111,"caption":"Andr\u00e9 Minhorst Verlag"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","caption":"Andr\u00e9 Minhorst"}}]}},"_links":{"self":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000639","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/comments?post=55000639"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000639\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000639"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000639"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000639"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}