{"id":55000134,"date":"2015-06-01T00:00:00","date_gmt":"2020-01-24T15:58:15","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=134"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Tabellen_bearbeiten_mit_dem_TableDefObjekt","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html","title":{"rendered":"Tabellen bearbeiten mit dem TableDef-Objekt"},"content":{"rendered":"<p class='introduction'>Wenn Sie &uuml;ber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff &uuml;ber das Recordset-Objekt die gr&ouml;&szlig;te Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m&uuml;ssen.  Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m&ouml;glich ist.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1409_Tabledefs.mdb<\/b>.<\/p>\n<h2>Die richtige Bibliothek<\/h2>\n<p>Die VBA-Zugriffsmethoden f&uuml;r die Datenbank sind nicht Teil von Access selbst, sondern in eine zus&auml;tzliche Daten-Engine ausgelagert. Das f&uuml;hrt dazu, dass Sie in Ihrem VBA-Projekt einen zus&auml;tzlichen Verweis auf diese Engine ben&ouml;tigen. Wenn Sie eine neue Datenbank anlegen, so setzt Access diesen Verweis automatisch, doch leider war man sich bei Microsoft nicht einig, welche Bibliothek hierf&uuml;r die geeignete ist.<\/p>\n<p>So war man einige Zeit der Meinung, dass <b>ADODB<\/b> die bessere Zugriffsbibliothek darstellt, und folglich wurde beim Anlegen einer Datenbank darauf ein Verweis gesetzt. Erst ab Access 2007 schwenkte man wieder um und manifestierte <b>DAO<\/b> als Standard.<\/p>\n<p>Sie k&ouml;nnen daher nicht sicher sein, dass in Ihrer oder einer fremden Datenbank bereits ein Verweis auf die Bibliothek DAO gesetzt ist, welche die Klasse <b>TableDef<\/b> enth&auml;lt, von der hier die Rede sein soll.<\/p>\n<p>Im Zweifel schauen Sie im VBA-Objektkatalog nach, ob dort der Eintrag <b>DAO<\/b> vorhanden ist, oder rufen alternativ den Verweise-Dialog &uuml;ber das Men&uuml; <b>Extras|Verweise&#8230;<\/b> auf. DAO hie&szlig; zwar fr&uuml;her schon DAO, der Beschreibungstext des Verweises &auml;nderte sich allerdings. So ist bis Access 2003 ein Verweis auf die <b>Microsoft DAO 3.6 Objekt Library<\/b> zu setzen und f&uuml;r die Folgeversionen einer auf die <b>Microsoft Office 12.0 Access database engine Object Library<\/b>.<\/p>\n<p>Machen Sie f&uuml;r Access 2010 aus der 12 eine 14 und f&uuml;r Access 2013 eine 15. In allen F&auml;llen aber finden Sie anschlie&szlig;end  im Objektkatalog den Eintrag <b>DAO<\/b> in der linken oberen Combobox. Wird er ausgew&auml;hlt, so erscheinen die Datenzugriffsklassen der Bibliothek auf der linken Seite, wie in Bild 1, wo auch schon die <b>TableDef-Klasse<\/b> markiert wurde und rechts ihre Methoden wiedergibt.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/Objektkatalog_TDF.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/Objektkatalog_TDF.png\" alt=\"Die Klasse DAO.TableDef im VBA-Objektkatalog\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Die Klasse DAO.TableDef im VBA-Objektkatalog<\/p>\n<h2>TableDefs-Auflistung<\/h2>\n<p>Alle Tabellen Ihrer Datenbank sind in einer Art Katalog &uuml;ber die <b>TableDefs<\/b>-Klasse zu erhalten. Wie in allen Auflistungsklassen k&ouml;nnen deren <b>TableDef<\/b>-Elemente in einer <b>For..Each<\/b>-Schleife durchlaufen werden, die Zahl der Elemente &uuml;ber die Eigenschaft <b>Count<\/b> ermittelt oder Elemente gezielt mit der (versteckten) <b>Item<\/b>-Eigenschaft abgefragt werden. Woher jedoch wei&szlig; DAO, wenn es gar nicht Teil des Access-Objektmodells ist, welche Tabellen ihn der Access-Datenbank stecken Dazu muss &uuml;ber ein <b>Database<\/b>-Objekt, welches selbst die TableDefs-Methode ausweist, eine Verbindung zu ihr geschaffen werden.<\/p>\n<p>Dieses Bindeglied gibt es in Access entweder &uuml;ber die Eigenschaft <b>Application.CurrentDb  <\/b>oder &uuml;ber die Eigenschaft <b>Application.DBEngine<\/b>. Sobald eine Datenbank in Access ge&ouml;ffnet wird, tritt die Datenbank-Engine in Aktion und l&auml;dt in ihr <b>Workspace<\/b> ein neues <b>Database<\/b>-Objekt. Eine Kopie davon l&auml;sst sich dann &uuml;ber <b>CurrentDb<\/b> erhalten. Im Prinzip sollte man &uuml;ber beide Ans&auml;tze zum gleichen Ergebnis kommen:<\/p>\n<pre>1.\r\n<span style=\"color:blue;\">Dim <\/span>dbs<span style=\"color:blue;\"> As <\/span>DAO.Database\r\n<span style=\"color:blue;\">Set<\/span> dbs = Application.CurrentDb\r\n2.\r\n<span style=\"color:blue;\">Dim <\/span>dbs<span style=\"color:blue;\"> As <\/span>DAO.Database\r\n<span style=\"color:blue;\">Dim <\/span>wrk<span style=\"color:blue;\"> As <\/span>DAO.Workspace\r\n<span style=\"color:blue;\">Set<\/span> wrk = Application. _\r\n   DBEngine.Workspaces(0)\r\n<span style=\"color:blue;\">Set<\/span> dbs = wrk.Databases(0)\r\nAbgek&uuml;rzt:\r\n<span style=\"color:blue;\">Set<\/span> dbs = DBEngine(0)(0)<\/pre>\n<p>Dass es leider nicht egal ist, f&uuml;r welche der beiden Methoden man sich entscheidet, werden wir noch sehen.<\/p>\n<p>Versuchen wir zun&auml;chst alle Tabellen der aktuellen Datenbank namentlich im VBA-Direktfenster auszugeben. Rufen Sie dazu die erste der drei Routinen in Listing 1 auf. <b>ListTableDefs<\/b> definiert erst eine TableDef-Variable <b>tdf<\/b> und f&uuml;llt diese in der folgenden <b>For..Each<\/b>-Schleife jeweils mit dem n&auml;chsten Element der TableDefs-Auflistung von <b>CurrentDb<\/b>. Die Eigenschaft <b>Name<\/b> des TableDef-Objekt wird ins Direktfenster geschrieben.<\/p>\n<p>Auf diese Weise entsteht eine Liste wirklich aller Tabellen der Datenbank, zu der auch die Systemtabellen geh&ouml;ren, welche allesamt das Pr&auml;fix <b>MSys<\/b> tragen. Wollten Sie sie ausfiltern, so k&ouml;nnten Sie dies &uuml;ber eine Textfunktion tun, die die ersten vier Zeichen des Namen auswertet.<\/p>\n<p>Da ein <b>TableDef<\/b>-Objekt aber eine Methode besitzt, welche die Systemeigenschaft direkt anzeigen kann, ist der Gebrauch von <b>Attributes<\/b> verl&auml;sslicher. <b>Attributes<\/b> ist ein Long-Wert, der verschiedene Eigenschaften der Tabelle wiedergibt und als Zahlen bin&auml;r addiert. Sie finden diese in den Enumerationskonstanten der Klasse <b>TableDefAttributeEnum<\/b> von DAO im Objektkatalog. Dort gibt es etwa f&uuml;r Systemtabellen die Konstante <b>dbSystemObject<\/b> oder f&uuml;r verkn&uuml;pfte Tabellen das Attribut <b>dbAttachedTable<\/b>.<\/p>\n<p>Um zu ermitteln, ob <b>dbSystemObjekt <\/b>im <b>Attributes<\/b>-Wert der Tabelle steckt, muss diese Eigenschaftszahl per booleschem <b>AND <\/b>verglichen werden. Genau das geschieht auch in den beiden weiteren Routinen aus Listing 1. <b>ListSysTableDefs<\/b> gibt alle Systemtabellen aus und <b>ListNonSysTableDefs<\/b> die von Ihnen angelegten. Wobei hier zu erw&auml;hnen w&auml;re, dass &uuml;ber die Attributes-Eigenschaft eine jede Tabelle auch auf den Status Systemobjekt eingestellt werden kann! Wollten Sie etwa der Tabelle <b>tblStammdaten<\/b> der Beispieldatenbank den Systemstatus verleihen, so gen&uuml;gt daf&uuml;r eine Zeile:<\/p>\n<pre><span style=\"color:blue;\">Sub <\/span>ListTableDefs()\r\n     <span style=\"color:blue;\">Dim <\/span>tdf<span style=\"color:blue;\"> As <\/span>TableDef\r\n     For Each tdf In CurrentDb.TableDefs\r\n         <span style=\"color:blue;\">Debug.Print<\/span> tdf.Name\r\n     <span style=\"color:blue;\">Next<\/span> tdf\r\n<span style=\"color:blue;\">End Sub<\/span>\r\n<span style=\"color:blue;\">Sub <\/span>ListSysTableDefs()\r\n     <span style=\"color:blue;\">Dim <\/span>tdf<span style=\"color:blue;\"> As <\/span>TableDef\r\n     For Each tdf In CurrentDb.TableDefs\r\n         <span style=\"color:blue;\">If <\/span>(tdf.Attributes And dbSystemObject) <> 0<span style=\"color:blue;\"> Then<\/span> <span style=\"color:blue;\">Debug.Print<\/span> tdf.Name\r\n     <span style=\"color:blue;\">Next<\/span> tdf\r\n<span style=\"color:blue;\">End Sub<\/span>\r\n<span style=\"color:blue;\">Sub <\/span>ListNonSysTableDefs()\r\n     <span style=\"color:blue;\">Dim <\/span>tdf<span style=\"color:blue;\"> As <\/span>TableDef\r\n     For Each tdf In CurrentDb.TableDefs\r\n         <span style=\"color:blue;\">If <\/span>(tdf.Attributes And dbSystemObject) = 0<span style=\"color:blue;\"> Then<\/span> <span style=\"color:blue;\">Debug.Print<\/span> tdf.Name\r\n     <span style=\"color:blue;\">Next<\/span> tdf\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 1: Ausgeben aller Tabellen der Datenbank &uuml;ber die TableDefs-Auflistung<\/p>\n<pre>CurrentDB.TableDefs(\"tblStammdaten\").Attributes = dbSystemObject<\/pre>\n<p>Ebenso k&ouml;nnten Sie die Tabelle verstecken, indem sie <b>dbHiddenObject<\/b> zuwiesen. In beiden F&auml;llen w&uuml;rde die Tabelle im Datenbankfenster oder Navigationsbereich nicht mehr auftauchen, so Sie nicht in deren Optionen eingestellt hatten, dass auch versteckte und System-Objekte angezeigt werden sollen. <\/p>\n<h2>Tabelleneigenschaften auslesen<\/h2>\n<p><b>Attributes<\/b> als Eigenschaftswert einer Tabelle wurde eben schon angef&uuml;hrt. Die weiteren Standardeigenschaften einer Tabelle entsprechend jenen, die rechts in Bild 1 zu sehen sind. Listing 2 zeigt beispielhaft, wie das geht.<\/p>\n<pre><span style=\"color:blue;\">Sub <\/span>ReadTabledef(<span style=\"color:blue;\">Optional<\/span> sTable<span style=\"color:blue;\"> As String<\/span> = \"tblStammdaten\")\r\n     <span style=\"color:blue;\">Dim <\/span>dbs<span style=\"color:blue;\"> As <\/span>DAO.Database\r\n     <span style=\"color:blue;\">Dim <\/span>tdf<span style=\"color:blue;\"> As <\/span>DAO.TableDef\r\n     \r\n'    <span style=\"color:blue;\">Set<\/span> tdf = CurrentDb.TableDefs(sTable)\r\n'    <span style=\"color:blue;\">Set<\/span> dbs = CurrentDb\r\n'    <span style=\"color:blue;\">Set<\/span> tdf = dbs.TableDefs(sTable)\r\n     \r\n     <span style=\"color:blue;\">With<\/span> DBEngine(0)(0)\r\n         .TableDefs.Refresh\r\n         <span style=\"color:blue;\">Set<\/span> tdf = .TableDefs(sTable)\r\n     End <span style=\"color:blue;\">With<\/span>\r\n     \r\n     <span style=\"color:blue;\">With<\/span> tdf\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Name\", tdf.Name\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Connect\", .Connect\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"DateCreated\", .DateCreated\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"LastUpdated\", .LastUpdated\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"SourceTableName\", .SourceTableName\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Updatable\", .Updatable\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"ValidationRule\", .ValidationRule\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"ValidationText\", .ValidationText\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Attribute Text:\", StrTableAttrib(.Attributes)\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"ReplicaFilter\", .ReplicaFilter\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"ConflictTable\", .ConflictTable\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"RecordCount\", .RecordCount\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Fields.Count\", .Fields.Count\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Indexes.Count\", .Indexes.Count\r\n         <span style=\"color:blue;\">Debug.Print<\/span> \"Properties.Count\", .Properties.Count\r\n     End <span style=\"color:blue;\">With<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 2: Eigenschaften eines TableDef-Objekts ausgeben<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000134\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Passwort<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Angemeldet bleiben<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000134?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000134\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"7a5ad64b41\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Anmelden\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wenn Sie &uuml;ber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff &uuml;ber das Recordset-Objekt die gr&ouml;&szlig;te Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m&uuml;ssen.  Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m&ouml;glich ist.<\/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,"footnotes":""},"categories":[662014,66092014,44000018],"tags":[],"class_list":["post-55000134","post","type-post","status-publish","format-standard","hentry","category-662014","category-66092014","category-Datenzugriff_programmieren"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]\" \/>\n\t\t<meta property=\"og:description\" content=\"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t\t<meta property=\"og:image:height\" content=\"127\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-24T15:58:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#blogposting\",\"name\":\"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]\",\"headline\":\"Tabellen bearbeiten mit dem TableDef-Objekt\",\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/tl_files\\\/images\\\/Objektkatalog_TDF.png\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\\\/#articleImage\"},\"datePublished\":\"2015-06-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage\"},\"articleSection\":\"2014, 9\\\/2014, Datenzugriff programmieren\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-basics.de\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"name\":\"2014\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"position\":2,\"name\":\"2014\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/9\\\/2014#listItem\",\"name\":\"9\\\/2014\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/9\\\/2014#listItem\",\"position\":3,\"name\":\"9\\\/2014\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/9\\\/2014\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#listItem\",\"name\":\"Tabellen bearbeiten mit dem TableDef-Objekt\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"name\":\"2014\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#listItem\",\"position\":4,\"name\":\"Tabellen bearbeiten mit dem TableDef-Objekt\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/9\\\/2014#listItem\",\"name\":\"9\\\/2014\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/access-basics.de\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/logo400.png\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\\\/#organizationLogo\",\"width\":400,\"height\":127},\"image\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\",\"name\":\"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]\",\"description\":\"Wenn Sie \\u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \\u00fcber das Recordset-Objekt die gr\\u00f6\\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\\u00f6glich ist.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"datePublished\":\"2015-06-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]","description":"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.","canonical_url":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#blogposting","name":"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]","headline":"Tabellen bearbeiten mit dem TableDef-Objekt","author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"publisher":{"@id":"https:\/\/access-basics.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/tl_files\/images\/Objektkatalog_TDF.png","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\/#articleImage"},"datePublished":"2015-06-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage"},"isPartOf":{"@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage"},"articleSection":"2014, 9\/2014, Datenzugriff programmieren"},{"@type":"BreadcrumbList","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","position":1,"name":"Home","item":"https:\/\/access-basics.de\/","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","name":"2014"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","position":2,"name":"2014","item":"https:\/\/access-basics.de\/index.php\/category\/2014","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014#listItem","name":"9\/2014"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014#listItem","position":3,"name":"9\/2014","item":"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#listItem","name":"Tabellen bearbeiten mit dem TableDef-Objekt"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","name":"2014"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#listItem","position":4,"name":"Tabellen bearbeiten mit dem TableDef-Objekt","previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014#listItem","name":"9\/2014"}}]},{"@type":"Organization","@id":"https:\/\/access-basics.de\/#organization","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","url":"https:\/\/access-basics.de\/","logo":{"@type":"ImageObject","url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\/#organizationLogo","width":400,"height":127},"image":{"@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author","url":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#webpage","url":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html","name":"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]","description":"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/access-basics.de\/#website"},"breadcrumb":{"@id":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html#breadcrumblist"},"author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"creator":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"datePublished":"2015-06-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/access-basics.de\/#website","url":"https:\/\/access-basics.de\/","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","inLanguage":"de-DE","publisher":{"@id":"https:\/\/access-basics.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","og:type":"article","og:title":"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]","og:description":"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.","og:url":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html","og:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:secure_url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:width":400,"og:image:height":127,"article:published_time":"2020-01-24T15:58:15+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"Tabellen bearbeiten mit dem TableDef-Objekt - Access [basics]","twitter:description":"Wenn Sie \u00fcber VBA auf die Objekte Ihrer Datenbank zugreifen, dann hat sicher der Datenzugriff \u00fcber das Recordset-Objekt die gr\u00f6\u00dfte Bedeutung. Seltener werden Sie die Definitionen der Tabellen auslesen, bearbeiten oder gar anlegen m\u00fcssen. Wenn doch, so ist das TableDef-Objekt von DAO die zentrale Anlaufstelle. Sehen Sie selbst, wie der Umgang damit aussieht und was m\u00f6glich ist.","twitter:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png"},"aioseo_meta_data":{"post_id":"55000134","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-27 03:11:55","updated":"2026-10-19 16:36:04","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2014\" title=\"2014\">2014<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014\" title=\"9\/2014\">9\/2014<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tTabellen bearbeiten mit dem TableDef-Objekt\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/access-basics.de\/"},{"label":"2014","link":"https:\/\/access-basics.de\/index.php\/category\/2014"},{"label":"9\/2014","link":"https:\/\/access-basics.de\/index.php\/category\/2014\/9\/2014"},{"label":"Tabellen bearbeiten mit dem TableDef-Objekt","link":"https:\/\/access-basics.de\/index.php\/Tabellen_bearbeiten_mit_dem_TableDefObjekt.html"}],"_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000134"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000134\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}