{"id":55001351,"date":"2022-02-01T00:00:00","date_gmt":"2022-01-31T15:18:16","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=1351"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Zugriff_auf_VBAProjekte_per_VBProject_","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/","title":{"rendered":"Zugriff auf VBA-Projekte per VBProject"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Die Klasse VBProject des Objektmodells zum Programmieren des VBA-Editors und der enthaltenen Elemente bietet einige interessante Eigenschaften, Methoden und Auflistungen. Diese schauen wir uns im vorliegenden Beitrag an. Hier wird deutlich, dass die  VBProjects im VB-Editor nicht nur f&uuml;r Access-Datenbanken genutzt werden k&ouml;nnen, sondern auch noch f&uuml;r andere Anwendungen &#8211; es gibt n&auml;mlich einige Elemente, die unter Access nicht funktionieren.<\/b><\/p>\n<h2>Vorbereitung<\/h2>\n<p>Um die Elemente der Klasse <b>VBE<\/b> nutzen zu k&ouml;nnen, ben&ouml;tigen Sie einen Verweis auf die Bibliothek <b>Microsoft Visual Basic for Applications Extensibility 5.3 Object Library<\/b>, den Sie im <b>Verweise<\/b>-Dialog des VBA-Editors hinzuf&uuml;gen k&ouml;nnen (Men&uuml;eintrag <b>Extras|Verweise<\/b>).<\/p>\n<h2>Elemente der VBProject-Klasse<\/h2>\n<p>Die <b>VBProject<\/b>-Klasse liefert die folgenden Methoden, Auflistungen und Eigenschaften:<\/p>\n<ul>\n<li><b>BuildFileName<\/b>: Gibt den Namen einer DLL zur&uuml;ck. Diese Eigenschaft hat unter Access keine Verwendung, da hier keine DLL erstellt werden kann.<\/li>\n<li><b>Collection<\/b>: Liefert einen Verweis auf die Collection, in der sich das <b>VBProject<\/b>-Element befindet. Diese sollte normalerweise nur ein Element enthalten, n&auml;mlich das aktuelle VBA-Projekt. Wenn Sie jedoch beispielsweise seit dem Start der aktuellen Access-Session ein Access-Add-In verwendet haben, finden Sie auch dessen <b>VBProject<\/b>-Element in der Auflistung.<\/li>\n<li><b>Description<\/b>: Diese Eigenschaft ist standardm&auml;&szlig;ig leer und kann in den Projekteigenschaften eingestellt werden (siehe weiter unten).<\/li>\n<li><b>FileName<\/b>: Liefert den Pfad zu der Datei, in der das aktuelle VBProject-Objekt gespeichert ist &#8211; in der Regel also die Datenbankdatei, von der aus Sie den VBA-Editor mit dem aktuellen Projekt ge&ouml;ffnet haben.<\/li>\n<li><b>MakeCompiledFile<\/b>: F&uuml;hrt beim Aufruf aus einem VBA-Projekt zu dem Fehler aus Bild 1 und ist laut Dokumentation zum Erstellen einer DLL f&uuml;r das aktuelle Projekt gedacht &#8211; was aber wohl nicht f&uuml;r VBA-Projekte von Access-Datenbanken gilt.<\/li>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_001.png\" alt=\"Fehler beim Aufruf der Methode MakeCompiledFile\" width=\"424,5589\" height=\"194,2131\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Fehler beim Aufruf der Methode MakeCompiledFile<\/span><\/b><\/p>\n<li><b>Mode<\/b>: Gibt den Modus des Projekts an. Kann die drei Werte <b>vbext_vm_Run<\/b> (<b>0<\/b>), <b>vbext_vm_Break<\/b> (<b>1<\/b>)<b> <\/b>oder <b>vbext_vm_Design <\/b>(<b>2<\/b>) annehmen. Auch diese Eigenschaft l&auml;sst sich in VBA-Projekten unter Access nicht sinnvoll nutzen. Wenn Sie einen Haltepunkt setzen, dieser im Code erreicht wird und Sie dann im Direktbereich <b>Debug.Print VBE.ActiveVBProject.Mode <\/b>ausgeben lassen, erhalten Sie dennoch den Wert <b>0<\/b>.<\/li>\n<li><b>Name<\/b>: Liefert den Namen des VBA-Projekts, so wie er auch in den Eigenschaften festgelegt ist.<\/li>\n<li><b>Protection<\/b>: Kann die Werte <b>vbext_pp_locked <\/b>(<b>1<\/b>) oder <b>vbext_pp_none <\/b>(<b>0<\/b>) annehmen. Standardm&auml;&szlig;ig ist der Wert <b>0 <\/b>eingestellt. Diesen Wert &auml;ndern Sie durch Vergeben eines Kennworts f&uuml;r das VBA-Projekt.<\/li>\n<li><b>References<\/b>: Liefert eine Auflistung der Verweise des aktuellen VBA-Projekts.<\/li>\n<li><b>SaveAs<\/b>: Nicht f&uuml;r Access-VBA-Projekte verf&uuml;gbar.<\/li>\n<li><b>Saved<\/b>: Gibt an, ob es noch ungespeicherte &Auml;nderungen im VBA-Projekt gibt. <b>True <\/b>bedeutet, dass alle &Auml;nderungen gespeichert sind, <b>False<\/b>, dass noch nicht gespeicherte &Auml;nderungen vorliegen.<\/li>\n<li><b>Type<\/b>: Gibt den Typ des VBA-Projekts zur&uuml;ck. Es gibt die beiden Werte <b>vbext_pt_HostProject <\/b>(<b>100<\/b>) und <b>vbext_pt_Standalone<\/b> (<b>101<\/b>).<\/li>\n<li><b>VBComponents<\/b>: Liefert eine Auflistung aller <b>VBComponent<\/b>-Objekte.<\/li>\n<li><b>VBE<\/b>: Verweis auf das &uuml;bergeordnete VBE-Objekt<\/li>\n<\/ul>\n<h2>Projekteigenschaften einstellen<\/h2>\n<p>Die weiter oben erw&auml;hnte Eigenschaft <b>Description<\/b> ist standardm&auml;&szlig;ig leer. Sie k&ouml;nnen diese f&uuml;llen, indem Sie den Dialog <b>[Projektname] &#8211; Projekteigenschaften <\/b>&ouml;ffnen, was Sie mit dem Men&uuml;eintrag <b>Extras|Eigenschaften von [Projektname]&#8230; <\/b>erledigen. Hier finden Sie auf der ersten Seite gleich die Eigenschaft <b>Projektbeschreibung<\/b>, die Sie mit einem beliebigen Text f&uuml;llen k&ouml;nnen (siehe Bild 2).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_002.png\" alt=\"Einstellen der Beschreibung eines VBA-Projekts\" width=\"474,5589\" height=\"434,4391\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Einstellen der Beschreibung eines VBA-Projekts<\/span><\/b><\/p>\n<p>Anschlie&szlig;end rufen Sie diesen Text mit der folgenden Anweisung beispielsweise im Direktbereich ab:<\/p>\n<pre>  VBE.ActiveVBProject.Description\r\nDies ist eine Projektbeschreibung.<\/pre>\n<h2>Kennwortschutz aktivieren und abfragen<\/h2>\n<p>Den Kennwortschutz aktivieren Sie im gleichen Dialog, in dem Sie auch die Projektbeschreibung eingeben &#8211; allerdings auf der zweiten Registerseite unter <b>Schutz<\/b>. Um den Schutz zu aktivieren, setzen Sie einen Haken f&uuml;r die Option <b>Projekt f&uuml;r die Anzeige <\/b>sperren. (siehe Bild 3). Danach k&ouml;nnen Sie unten das Kennwort eingeben und nochmals best&auml;tigen.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_003.png\" alt=\"Festlegen des Kennwortschutzes\" width=\"474,5589\" height=\"434,4391\"\/><\/p>\n<p><!--30percent--><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Festlegen des Kennwortschutzes<\/span><\/b><\/p>\n<p>Schlie&szlig;en Sie den Dialog und die Datenbankanwendung und &ouml;ffnen Sie diese erneut, erhalten Sie beim Versuch, auf das VBA-Projekt zuzugreifen, einen Dialog zur Eingabe des Kennworts (siehe Bild 4).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_004.png\" alt=\"Abfrage des Kennworts\" width=\"549,559\" height=\"327,2928\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Abfrage des Kennworts<\/span><\/b><\/p>\n<p>Um abzufragen, ob das VBA-Projekt gesch&uuml;tzt ist, k&ouml;nnen Sie die folgende Prozedur nutzen, die gleich den passenden Text ausgibt. Die Prozedur referenziert das aktuelle VBA-Projekt und pr&uuml;ft, welchen Wert die Eigenschaft <b>Protection <\/b>liefert. Im Falle von <b>vbext_pp_none <\/b>ist das Projekt nicht gesch&uuml;tzt, im Falle von <b>vbext_pp_locked <\/b>schon:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>VBAProjektGeschuetzt()\r\n     <span style=\"color:blue;\">Dim <\/span>objVBProject<span style=\"color:blue;\"> As <\/span>VBProject\r\n     <span style=\"color:blue;\">Set<\/span> objVBProject = VBE.ActiveVBProject\r\n     Select Case objVBProject.Protection\r\n         <span style=\"color:blue;\">Case <\/span>vbext_pp_none\r\n             <span style=\"color:blue;\">MsgBox<\/span> \"Das VBA-Projekt ''\" &  objVBProject.Name & \"'' ist nicht gesch&uuml;tzt.\"\r\n         <span style=\"color:blue;\">Case <\/span>vbext_pp_locked\r\n             <span style=\"color:blue;\">MsgBox<\/span> \"Das VBA-Projekt ''\"  & objVBProject.Name & \"''  ist gesch&uuml;tzt.\"\r\n     <span style=\"color:blue;\">End Select<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Damit k&ouml;nnen Sie zum Beispiel von einem Access-Add-In aus pr&uuml;fen, ob ein VBA-Projekt, das mit diesem Add-In bearbeitet werden soll, gesch&uuml;tzt ist, bevor es beim Zugriff auf eines der Elemente des VBA-Projekts einen Fehler ausl&ouml;st.<\/p>\n<p>Um dies nachzustellen, machen wir eine Kopie unserer Beispieldatenbank und speichern diese unter dem Namen <b>VBAEditorProgrammieren_Geschuetzt.accdb <\/b>im gleichen Verzeichnis wie die aktuelle Datenbank. Nun sch&uuml;tzen Sie die Datenbank wie zuvor beschrieben mit einem Kennwort. Anschlie&szlig;end f&uuml;gen Sie die Datenbank &uuml;ber den <b>Verweise<\/b>-Dialog als Verweis hinzu. Dazu klicken Sie im <b>Verweise<\/b>-Dialog auf <b>Durchsuchen&#8230; <\/b>und w&auml;hlen im nun erscheinenden Dateiauswahldialog die gesch&uuml;tzte Datenbank aus.<\/p>\n<p>Anschlie&szlig;end f&uuml;hren Sie die folgende Prozedur aus, um per Schleife auf die per Verweis referenzierte Datei, die nun auch als VBA-Projekt im Projektexplorer erscheinen sollte, zuzugreifen:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>ZugriffAufGeschuetztesProjekt()\r\n     <span style=\"color:blue;\">Dim <\/span>objVBProject<span style=\"color:blue;\"> As <\/span>VBProject\r\n     For Each objVBProject In VBE.VBProjects\r\n         <span style=\"color:blue;\">If <\/span>objVBProject.FileName = CurrentProject.Path  & \"\\VBAEditorProgrammieren_Geschuetzt.accdb\"<span style=\"color:blue;\"> Then<\/span>\r\n             <span style=\"color:blue;\">Exit For<\/span>\r\n         <span style=\"color:blue;\">End If<\/span>\r\n     <span style=\"color:blue;\">Next<\/span> objVBProject\r\n     <span style=\"color:blue;\">Debug.Print<\/span> objVBProject.VBComponents.Count\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Dieser Zugriff l&ouml;st schlie&szlig;lich den Fehler aus Bild 5 aus.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_009.png\" alt=\"Fehler beim Zugriff auf ein gesch&uuml;tztes VBA-Projekt\" width=\"700\" height=\"295,0641\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 5: Fehler beim Zugriff auf ein gesch&uuml;tztes VBA-Projekt<\/span><\/b><\/p>\n<p>Wenn Sie im Projektexplorer doppelt auf das gesch&uuml;tzte Projekt klicken und dann das Kennwort eingeben, k&ouml;nnen Sie die Prozedur ohne Fehler aufrufen und auch per VBA auf das gesch&uuml;tzte Projekt zugreifen. Ein Eingeben des Kennworts per VBA ist jedoch nicht m&ouml;glich.<\/p>\n<h2>Zugriff auf die Verweise<\/h2>\n<p>Die Verweise, die zu einem VBA-Projekt hinzugef&uuml;gt sind, k&ouml;nnen Sie &uuml;ber die <b>References<\/b>-Auflistung abfragen. Wichtig ist hierbei, dass Sie beim Durchlaufen der Auflistung eine Variable des Typs <b>Reference <\/b>aus der Klasse <b>VBIDE <\/b>nutzen und nicht die mit dem gleichnamigen Typ aus der Klasse <b>Access<\/b>. Der Grund ist, dass die <b>Reference<\/b>-Klasse aus <b>VBIDE <\/b>zwei Eigenschaften mehr aufweist, die Sie gegebenenfalls irgendwann einmal ben&ouml;tigen k&ouml;nnten.<\/p>\n<p>Die <b>Reference<\/b>-Klasse der Klasse <b>Access <\/b>zeigt im Objektkatalog eine Eigenschaft namens <b>Kind<\/b>, die bei der <b>Reference<\/b>-Klasse aus <b>VBIDE <\/b>nicht vorkommt (siehe Bild 6). Diese taucht allerdings nur im Objektkatalog auf und wird &uuml;ber IntelliSense gar nicht angeboten &#8211; der Zugriff liefert einen Fehler.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_005.png\" alt=\"Reference-Objekt der Access-Klasse\" width=\"424,5589\" height=\"436,0113\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 6: Reference-Objekt der Access-Klasse<\/span><\/b><\/p>\n<p>Die <b>Reference<\/b>-Klasse aus <b>VBIDE <\/b>hat somit drei Eigenschaften mehr, n&auml;mlich <b>Description<\/b>, <b>Type <\/b>und <b>VBE<\/b> (siehe Bild 7). <b>Description <\/b>liefert die Bezeichnung, die Sie auch im <b>Verweise<\/b>-Dialog sehen und <b>Type <\/b>den Typ des Verweises. Die beiden m&ouml;glichen Werte f&uuml;r <b>Type <\/b>sind <b>vbext_rk_TypeLib <\/b>(<b>0<\/b>) und <b>vbext_rk_Project <\/b>(<b>1<\/b>). &Uuml;blicherweise haben Verweise den Typ <b>0<\/b>. Wenn Sie jedoch beispielsweise einen Verweis auf eine andere Access-Datenbank hinzuf&uuml;gen, dann liefert <b>Type <\/b>den Wert <b>vbext_rk_Project <\/b>zur&uuml;ck.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2022_01\/pic_1351_006.png\" alt=\"Reference-Objekt der VBIDE-Klasse\" width=\"424,5589\" height=\"436,0113\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 7: Reference-Objekt der VBIDE-Klasse<\/span><\/b><\/p>\n<p>Um die <b>Reference<\/b>-Objekte der <b>References<\/b>-Auflistung zu durchlaufen, erstellen wir einen Verweis auf das VBA-Projekt der aktuellen Datenbank. Danach durchlaufen wir eine <b>For Each<\/b>-Schleife &uuml;ber alle Elemente der <b>References<\/b>-Auflistung und geben die Werte der Eigenschaften <b>Name <\/b>und <b>Description <\/b>im Direktbereich aus:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>VerweiseAusgeben()\r\n     <span style=\"color:blue;\">Dim <\/span>objVBProject<span style=\"color:blue;\"> As <\/span>VBProject\r\n     <span style=\"color:blue;\">Dim <\/span>ref<span style=\"color:blue;\"> As <\/span>VBIDE.Reference\r\n     <span style=\"color:blue;\">Set<\/span> objVBProject = VBE.ActiveVBProject\r\n     For Each ref In objVBProject.References\r\n         <span style=\"color:blue;\">Debug.Print<\/span> ref.Name, ref.Description\r\n     <span style=\"color:blue;\">Next<\/span> ref\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Die Ausgabe lautet f&uuml;r unsere Datenbank beispielsweise wie folgt, wobei der letzte Eintrag eine per Verweis eingebundene Kopie unserer Beispieldatenbank ist:<\/p>\n<pre>VBA           Visual Basic For Applications\r\nAccess        Microsoft Access 16.0 Object Library\r\nstdole        OLE Automation\r\nDAO           Microsoft Office 16.0 Access database engine \r\n               Object Library\r\nVBIDE         Microsoft Visual Basic for Applications \r\n               Extensibility 5.3\r\nprjVBAEditorProgrammieren_Geschuetzt      &nbsp;&nbsp;&nbsp;&nbsp;     Dies ist eine Projektbeschreibung.         1<\/pre>\n<h2>Pr&uuml;fen, ob offene &Auml;nderungen vorliegen<\/h2>\n<p>Mit der Eigenschaft <b>Saved <\/b>k&ouml;nnen Sie pr&uuml;fen, ob es offene &Auml;nderungen f&uuml;r das VBA-Projekt gibt. Das ist hilfreich, wenn Sie beispielsweise sicherstellen wollen, dass keine &Auml;nderungen verloren gehen, wenn Sie beispielsweise aus Versehen beim Schlie&szlig;en offene &Auml;nderungen nicht gespeichert haben, weil Sie die entsprechende R&uuml;ckfrage mit Nein quittiert haben. Sie k&ouml;nnten dann ein Add-In bauen, dass alle paar Minuten oder Sekunden pr&uuml;ft, ob es offene &Auml;nderungen gibt, und dann gegebenenfalls den aktuellen Stand tempor&auml;r in Textdateien zwischenspeichert.<\/p>\n<h2>VBComponents-Auflistung nutzen<\/h2>\n<p>Die Auflistung der <b>VBComponent<\/b>-Objekte k&ouml;nnen Sie etwas wie folgt durchlaufen und die Namen der Elemente ausgeben:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>VBComponentsDurchlaufen()\r\n     <span style=\"color:blue;\">Dim <\/span>objVBProject<span style=\"color:blue;\"> As <\/span>VBProject\r\n     <span style=\"color:blue;\">Dim <\/span>objVBComponent<span style=\"color:blue;\"> As <\/span>VBComponent\r\n     <span style=\"color:blue;\">Set<\/span> objVBProject = VBE.ActiveVBProject\r\n     For Each objVBComponent In objVBProject.VBComponents\r\n         <span style=\"color:blue;\">Debug.Print<\/span> objVBComponent.Name\r\n     <span style=\"color:blue;\">Next<\/span> objVBComponent\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Auf weitere Eigenschaften der <b>VBComponent<\/b>-Elemente gehen wir im Beitrag <b>Module und Co. im Griff mit VBComponent <\/b>(<b>www.access-im-unternehmen.de\/1352<\/b>).<\/p>\n<h2>Downloads zu diesem Beitrag<\/h2>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>VBAEditorProgrammieren.accdb<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/C53DE28B-9F75-42C2-8708-5B6DD87D511C\/aiu_1351.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Klasse VBProject des Objektmodells zum Programmieren des VBA-Editors und der enthaltenen Elemente bietet einige interessante Eigenschaften, Methoden und Auflistungen. Diese schauen wir uns im vorliegenden Beitrag an. Hier wird deutlich, dass die  VBProjects im VB-Editor nicht nur f&uuml;r Access-Datenbanken genutzt werden k&ouml;nnen, sondern auch noch f&uuml;r andere Anwendungen &#8211; es gibt n&auml;mlich einige Elemente, die unter Access nicht funktionieren.<\/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":[66012022,662022,44000025],"tags":[],"class_list":["post-55001351","post","type-post","status-publish","format-standard","hentry","category-66012022","category-662022","category-VBA_und_Programmiertechniken"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Zugriff auf VBA-Projekte per VBProject  - 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\/Zugriff_auf_VBAProjekte_per_VBProject_\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zugriff auf VBA-Projekte per VBProject\" \/>\n<meta property=\"og:description\" content=\"Die Klasse VBProject des Objektmodells zum Programmieren des VBA-Editors und der enthaltenen Elemente bietet einige interessante Eigenschaften, Methoden und Auflistungen. Diese schauen wir uns im vorliegenden Beitrag an. Hier wird deutlich, dass die VBProjects im VB-Editor nicht nur f&uuml;r Access-Datenbanken genutzt werden k&ouml;nnen, sondern auch noch f&uuml;r andere Anwendungen - es gibt n&auml;mlich einige Elemente, die unter Access nicht funktionieren.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2022-01-31T15:18:16+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151\" \/>\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=\"8\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Zugriff auf VBA-Projekte per VBProject\",\"datePublished\":\"2022-01-31T15:18:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/\"},\"wordCount\":1394,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/e3814befedb6455184792560ac34e151\",\"articleSection\":[\"1\\\/2022\",\"2022\",\"VBA und Programmiertechniken\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/\",\"name\":\"Zugriff auf VBA-Projekte per VBProject - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/e3814befedb6455184792560ac34e151\",\"datePublished\":\"2022-01-31T15:18:16+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/e3814befedb6455184792560ac34e151\",\"contentUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/e3814befedb6455184792560ac34e151\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Zugriff_auf_VBAProjekte_per_VBProject_\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Zugriff auf VBA-Projekte per VBProject\"}]},{\"@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":"Zugriff auf VBA-Projekte per VBProject  - 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\/Zugriff_auf_VBAProjekte_per_VBProject_\/","og_locale":"de_DE","og_type":"article","og_title":"Zugriff auf VBA-Projekte per VBProject","og_description":"Die Klasse VBProject des Objektmodells zum Programmieren des VBA-Editors und der enthaltenen Elemente bietet einige interessante Eigenschaften, Methoden und Auflistungen. Diese schauen wir uns im vorliegenden Beitrag an. Hier wird deutlich, dass die VBProjects im VB-Editor nicht nur f&uuml;r Access-Datenbanken genutzt werden k&ouml;nnen, sondern auch noch f&uuml;r andere Anwendungen - es gibt n&auml;mlich einige Elemente, die unter Access nicht funktionieren.","og_url":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/","og_site_name":"Access im Unternehmen","article_published_time":"2022-01-31T15:18:16+00:00","og_image":[{"url":"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"8\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Zugriff auf VBA-Projekte per VBProject","datePublished":"2022-01-31T15:18:16+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/"},"wordCount":1394,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#primaryimage"},"thumbnailUrl":"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151","articleSection":["1\/2022","2022","VBA und Programmiertechniken"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/","url":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/","name":"Zugriff auf VBA-Projekte per VBProject - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#primaryimage"},"thumbnailUrl":"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151","datePublished":"2022-01-31T15:18:16+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#primaryimage","url":"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151","contentUrl":"http:\/\/vg08.met.vgwort.de\/na\/e3814befedb6455184792560ac34e151"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Zugriff_auf_VBAProjekte_per_VBProject_\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Zugriff auf VBA-Projekte per VBProject"}]},{"@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\/55001351","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=55001351"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001351\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55001351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55001351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55001351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}