{"id":55000786,"date":"2011-08-01T00:00:00","date_gmt":"2020-05-22T21:56:55","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=786"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"ImportExportSpezifikationen_im_Griff","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/","title":{"rendered":"Import\/Export-Spezifikationen im Griff"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Wer oft Daten importiert oder exportiert, wird dies in vielen F&auml;llen mit den entsprechenden Assistenten und den damit erzeugten Spezifikationen erledigen. Falls nicht, erhalten Sie in diesem Beitrag eine kurze Einf&uuml;hrung in die notwendigen Schritte. Au&szlig;erdem erfahren Sie, wo Access die Spezifikationen speichert und wie Sie diese ganz schnell &auml;ndern, ohne extra den Assistenten daf&uuml;r &ouml;ffnen zu m&uuml;ssen.<\/b><\/p>\n<p>Wenn Sie etwa unter Access 2007\/2010 einen Export mit dem Assistenten durchf&uuml;hren m&ouml;chten, finden Sie alles Notwendige im Ribbon-Tab <b>Externe Daten <\/b>(unter Access 2003 und &auml;lter verwenden Sie zum Importieren den Men&uuml;eintrag <b>Datei|Externe Daten|Importieren <\/b>beziehungsweise <b>Verkn&uuml;pfen <\/b>und zum Exportieren den Kontextmen&uuml;eintrag <b>Exportieren <\/b>des jeweiligen Objekts im Datenbankfenster). Im Ribbon-Tab <b>Externe Daten <\/b>klicken Sie einfach auf das gew&uuml;nschte Ziel beziehungsweise die Quelle (s. Bild 1) und starten so den Assistenten. Nach dem Ausw&auml;hlen der Quell-\/Zieldatei sieht der Assistenten dann in allen Access-Versionen des neuen Jahrtausends &auml;hnlich aus.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic001.png\" alt=\"pic001.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 1: Aufruf von Import- und Export-Funktionen unter Access 2010<\/span><\/b><\/p>\n<p>Der Export erfordert einige Vorbereitung: Wenn nicht alle Felder und alle Datens&auml;tze einer Tabelle in die Zieldatei, etwa eine Excel-Tabelle, geschrieben werden sollen, m&uuml;ssen Sie eine entsprechende Abfrage erstellen, welche nur die gew&uuml;nschten Felder aufnimmt und gegebenenfalls die Datens&auml;tze durch entsprechende Kriterien einschr&auml;nkt.<\/p>\n<p>Daf&uuml;r l&auml;sst sich der Assistent anschlie&szlig;end in zwei Schritten abfertigen: Er fragt nur, ob die Datenspalten durch Trennzeichen oder eine fixe Spaltenbreite voneinander getrennt werden sollen und welches Trennzeichen gegebenenfalls verwendet werden soll. Au&szlig;erdem m&ouml;chte er wissen, ob die Feldnamen als Spaltenk&ouml;pfe mitexportiert werden sollen und ob die einzelnen Werte etwa in Anf&uuml;hrungszeichen eingefasst werden sollen.<\/p>\n<p>Beim Importieren etwa aus einer Textdatei ist der Assistent naturgem&auml;&szlig; etwas neugieriger: Er fragt auch zun&auml;chst, ob die Daten in festen Spalten vorliegen oder durch ein Begrenzungszeichen voneinander getrennt sind (s. Bild 5).<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic002.png\" alt=\"pic002.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 2: Soll mit oder ohne Trennzeichen importiert\/exportiert werden<\/span><\/b><\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic003.png\" alt=\"pic003.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 3: Welches Trennzeichen wird verwendet, welches Textbegrenzungszeichen und wie sieht es mit der ersten Zeile aus<\/span><\/b><\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic004.png\" alt=\"pic004.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 4: Festlegen von Feldern und Datentypen<\/span><\/b><\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic005.png\" alt=\"pic005.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 5: Ausw&auml;hlen eines Prim&auml;rschl&uuml;sselfeldes, falls gew&uuml;nscht<\/span><\/b><\/p>\n<p><b>Spezifikationen speichern<\/b><\/p>\n<p>Es wird gern &uuml;bersehen, ist aber enorm wichtig: der Dialog, der sich durch einen Mausklick auf die Schaltfl&auml;che <b>Erweitert <\/b>&ouml;ffnet (s. Bild 6). Hier finden Sie n&auml;mlich nicht nur eine Zusammenfassung der vorgenommenen Einstellungen, sondern auch noch die M&ouml;glichkeit, die Einstellungen zu speichern. Dazu klicken Sie auf die Schaltfl&auml;che <b>Speichern unter &#8230; <\/b>und geben im folgenden Dialog den Namen der zu speichernden Spezifikation an.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic006.png\" alt=\"pic006.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 6: &Uuml;bersicht und weitere Optionen<\/span><\/b><\/p>\n<p>Damit schaffen Sie die Voraussetzung f&uuml;r die folgenden Aktionen:<\/p>\n<ul>\n<li class=\"aufz-hlung\">Sie k&ouml;nnen einen Import oder Export auf Basis der gespeicherten Spezifikation mit einer einfachen VBA-Anweisung aufrufen.<\/li>\n<li class=\"aufz-hlung\">Sie k&ouml;nnen &auml;nderungen an der Spezifikation durchf&uuml;hren, indem Sie den Assistenten erneut starten, gleich mit einem Klick auf <b>Spezifikationen&#8230; <\/b>den Dialog <b>Import\/Export-Spezifikationen <\/b>&ouml;ffnen und dort die gew&uuml;nschte Spezifikation ausw&auml;hlen. Sie k&ouml;nnen die Spezifikation dann &auml;ndern und unter dem gleichen oder einem anderen Namen sichern.<\/li>\n<\/ul>\n<p><b>Import\/Export per VBA<\/b><\/p>\n<p>F&uuml;r den Import\/Export per VBA gibt es ein paar Methoden des <b>DoCmd<\/b>-Objekts, zum Beispiel <b>DoCmd.TransferSpreadsheet <\/b>f&uuml;r Excel-Tabellen oder <b>DoCmd.TransferText <\/b>f&uuml;r Textdateien.<\/p>\n<p>Wenn Sie beispielsweise den Inhalt der Tabelle <b>tblKategorien <\/b>in einer Textdatei speichern m&ouml;chten und dazu bereits eine Export-Spezifikation unter dem Namen <b>Kategorien Exportspezifikation <\/b>erstellt haben, k&ouml;nnen Sie dies mit der folgenden Anweisung erledigen:<\/p>\n<pre>DoCmd.TransferText acExportDelim, &quot;Kategorien Exportspezifikation&quot;, &quot;tblKategorien&quot;, CurrentProject.Path &amp; &quot;\\Kategorien.txt&quot;, True<\/pre>\n<p>Der erste Parameter gibt dabei die Export\/Import-Art an, der zweite den Namen der Spezifikation, der dritte die Quelltabelle und der vierte die Zieldatenbank.<\/p>\n<p>Der letzte Parameter bestimmt, ob die Feldnamen beim Export in die erste Zeile geschrieben werden sollen.<\/p>\n<p>Auf &auml;hnliche Weise gehen Sie auch beim Importieren von Daten vor &#8211; Sie m&uuml;ssen lediglich eine entsprechende Spezifikation anlegen und als ersten Parameter eine der <b>acImport&#8230;<\/b>-Konstanten angeben.<\/p>\n<p><b>Umst&auml;ndliches Anpassen der Spezifikationen<\/b><\/p>\n<p>Wenn Sie eine Spezifikation einmal &auml;ndern m&uuml;ssen, weil Sie beispielsweise einen Import mit vielen Feldern erstellt und beim Testen festgestellt haben, dass der Import noch nicht richtig funktioniert, m&uuml;ssen Sie theoretisch jedes Mal erneut den Assistenten &ouml;ffnen und die Spezifikation laden, &auml;ndern und erneut speichern. Das ist sehr unpraktisch, denn der Assistent fragt beispielsweise jedes Mal erneut den Namen der zu importierenden Datei ab. Dabei m&uuml;ssen Sie auch immer wieder zum entsprechenden Quellverzeichnis navigieren, um die Datei auszuw&auml;hlen, was mit der Zeit nervt.<\/p>\n<p>Zum Gl&uuml;ck gibt es noch eine Alternative, die in den folgenden Abschnitten vorgestellt wird.<\/p>\n<p><b>Speicherort der Spezifikationen<\/b><\/p>\n<p>Die Daten einer Spezifikation werden g&uuml;nstigerweise an einer leicht erreichbaren Stelle gespeichert &#8211; n&auml;mlich in zwei als Systemtabellen markierten Tabellen:<\/p>\n<ul>\n<li class=\"aufz-hlung\"><b>MSysIMEXSpecs <\/b>speichert die allgemeinen Daten einer Spezifikation (Bild 6) und <\/li>\n<li class=\"aufz-hlung\"><b>MSysIMEXColumns <\/b>enth&auml;lt die Informationen zu den einzelnen Feldern (siehe Bild 8).<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic007.png\" alt=\"pic007.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 7: Entwurf der Tabelle MSysIMEXSpecs<\/span><\/b><\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic008.png\" alt=\"pic008.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 8: Entwurf der Tabelle MSysIMEXColumns<\/span><\/b><\/p>\n<p>Sollten die Tabellen bei Ihnen nicht sichtbar sein, kann dies zwei Ursachen haben:<\/p>\n<ul>\n<li class=\"aufz-hlung\">Sie haben noch keine Spezifikation gespeichert. Die Tabellen werden erst erstellt, wenn Sie mindestens eine Spezifikation gespeichert haben.<\/li>\n<li class=\"aufz-hlung\">Die Access-Optionen sind so eingestellt, dass keine Systemtabellen angezeigt werden. In diesem Fall aktivieren Sie die Anzeige der Systemobjekte. Unter Access 2003 und &auml;lter zeigen Sie die Optionen mit <b>Extras|Optionen <\/b>an, die gesuchte Option <b>Systemobjekte <\/b>befindet sich unter <b>Ansicht|Anzeigen<\/b>, unter Access 2007 und j&uuml;nger klicken Sie mit der rechten Maustaste auf die Titelzeile des Navigationsbereichs und w&auml;hlen aus dem Kontextmen&uuml; den Eintrag <b>Navigationsoptionen&#8230; <\/b>aus &#8211; die Option <b>Systemobjekte anzeigen <\/b>befindet sich unten links.<\/li>\n<\/ul>\n<p><b>Spezifikationen bearbeiten<\/b><\/p>\n<p>Unter Access 2007 und j&uuml;nger k&ouml;nnen Sie die beiden Tabellen <b>MSysIMEXSpecs <\/b>und <b>MSysIMEXColumns <\/b>direkt bearbeiten. Sie k&ouml;nnen dort also sowohl die allgemeinen Einstellungen anpassen als auch die f&uuml;r die einzelnen Felder. Wenn Sie also einen Import etwa unter dem Namen <b>Kategorien Importspezifikation <\/b>gespeichert haben, ermitteln Sie aus dem Feld <b>SpecID <\/b>(s. Bild 10).<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic009.png\" alt=\"pic009.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 9: Ermitteln der SpecID f&uuml;r eine gespeicherte Spezifikation<\/span><\/b><\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic010.png\" alt=\"pic010.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 10: Bearbeiten der Spalteninformationen in MSysIMEXColumns<\/span><\/b><\/p>\n<p><b>Kein Zugriff unter Access 2003 und &auml;lter<\/b><\/p>\n<p>Wenn Sie dies unter &auml;lteren Access-Versionen ausprobieren, werden Sie schnell auf Widerstand sto&szlig;en: Die Daten der beiden Tabellen <b>MSysIMEXSpecs<\/b> und <b>MSysIMEXColumns <\/b>lassen sich nicht &auml;ndern. Genau wie die &uuml;brigen Systemtabellen scheinen diese beiden Tabellen gesch&uuml;tzt zu sein. &auml;nderungen lassen sich offensichtlich nur per Assistent durchf&uuml;hren.<\/p>\n<p><!--30percent--><\/p>\n<p>Das ist jedoch kein Grund, den Kopf in den Sand zu stecken: Diese Tabelle ist n&auml;mlich keine typische Systemtabelle, sondern sie wird nur als solche dargestellt und bringt die Eigenschaft mit sich, dass die enthaltenen Daten nicht direkt ge&auml;ndert werden k&ouml;nnen. Sie k&ouml;nnen jedoch per VBA auf die Inhalte der beiden Tabellen zugreifen und diese auch &auml;ndern. Probieren Sie beispielsweise einmal die folgende Prozedur aus:<\/p>\n<pre>Public Sub SpecsAnpassen()\r\n    Dim db As DAO.Database\r\n    Dim rst As DAO.Recordset\r\n    Set db = CurrentDb\r\n    Set rst = db.OpenRecordset(&quot;MSysIMEXSpecs&quot;, dbOpenDynaset)\r\n    rst.AddNew\r\n    rst!SpecName = &quot;Testspezifikation&quot;\r\n    rst.Update\r\n    Set db = Nothing\r\nEnd Sub<\/pre>\n<p>Die Prozedur &ouml;ffnet ein Recordset auf Basis der Tabelle <b>MSysIMEXSpecs <\/b>und f&uuml;gt mit der <b>AddNew<\/b>-Methode einen neuen Datensatz hinzu. Dabei tr&auml;gt sie als Namen der Spezifikation den Wert <b>Testspezifikation <\/b>ein. Nicht nur, dass das Aufrufen der Prozedur keinen Fehler hervorruft &#8211; der Datensatz wird auch noch problemlos angelegt!<\/p>\n<p><b>Systemtabelle oder nicht<\/b><\/p>\n<p>Schauen wir uns also einmal an, warum sich diese Tabelle so anders als die &uuml;brigen Systemtabellen verh&auml;lt. In anderen Systemtabellen f&uuml;gen Sie n&auml;mlich nicht einfach mal so einen Datensatz hinzu.<\/p>\n<p>Wenn Sie obige Prozedur mal mit den folgenden Zeilen ausf&uuml;hren und somit probieren, der Tabelle <b>MSysObjects<\/b> einen Datensatz hinzuzuf&uuml;gen, liefert das die Fehlermeldung aus Bild 11:<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic011.png\" alt=\"pic011.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 11: Fehler beim &auml;ndern einer herk&ouml;mmlichen Systemtabelle<\/span><\/b><\/p>\n<pre>Set rst = db.OpenRecordset(&quot;MSysObjects&quot;, dbOpenDynaset)\r\nrst.AddNew\r\nrst!ID = 99999999\r\nrst!Name = &quot;Testobjekt&quot;\r\nrst.Update<\/pre>\n<p>Wer sich schon ein wenig mit Systemtabellen besch&auml;ftigt hat, der wei&szlig;, wodurch sich diese von anderen Tabellen unterscheiden &#8211; n&auml;mlich durch den Wert <b>dbSystemObject <\/b>in der Eigenschaft <b>Attributes <\/b>des entsprechenden <b>TableDef<\/b>-Objekts. Wenn Sie diesen Wert etwa f&uuml;r die Systemtabelle <b>MSysObjects<\/b> ermitteln m&ouml;chten, geben Sie die folgende Anweisung im Direktfenster des VBA-Editors ein:<\/p>\n<pre>Debug.Print CurrentDB.TableDefs(&quot;MSysObjects&quot;).Attributes\r\n-2147483648<\/pre>\n<p>Wenn Sie das Ergebnis mit dem Zahlenwert f&uuml;r die Konstante <b>dbSystemObject <\/b>vergleichen, den Sie im Objektkatalog finden oder einfach mit <b>Debug.Print dbSystemObject <\/b>ermitteln k&ouml;nnen, ergibt sich eine Differenz von <b>2<\/b>.<\/p>\n<p>Ermitteln Sie nun mit der folgenden Anweisung den <b>Attributes<\/b>-Wert der Tabelle <b>MSysIMEXSpecs<\/b>:<\/p>\n<pre>Debug.Print CurrentDB.TableDefs(&quot;MSysIMEXSpecs&quot;).Attributes<\/pre>\n<p>Das Ergebnis lautet <b>2<\/b>. Die Tabellen zum Speichern von Spezifikationen sind also keine Systemtabellen, sondern mit einem nicht dokumentierten <b>Attributes<\/b>-Wert versehen. Dieser wiederum sorgt daf&uuml;r, dass eine Tabelle als Systemtabelle verborgen dargestellt wird und au&szlig;erdem nicht direkt ge&auml;ndert werden kann.<\/p>\n<p>Wie lautet der Umkehrschluss Wenn <b>MSysIMEXSpecs <\/b>und <b>MSysIMEXColumns <\/b>den Wert <b>0 <\/b>f&uuml;r die Eigenschaft <b>Attributes <\/b>erhalten, sollten diese auch beschreibbar sein. Die Frage ist nur: K&ouml;nnen Sie die <b>Attributes<\/b>-Eigenschaft von zumindest teilweise gesperrten Tabellen einfach so &auml;ndern Probieren Sie es aus:<\/p>\n<pre>CurrentDB.TableDefs(&quot;MSysIMEXSpecs&quot;).Attributes = 0<\/pre>\n<p>Dies gelingt ohne Weiteres. Und auch das anschlie&szlig;ende &Ouml;ffnen der Tabelle <b>MSysIMEXSpecs <\/b>und das &auml;ndern der enthaltenen Daten funktioniert! Sie k&ouml;nnen also bei einer kleinen &auml;nderung direkt auf die Spezifikationen zugreifen und diese anpassen.<\/p>\n<p><b>Sicherheit in Access 2007 und j&uuml;nger<\/b><\/p>\n<p>Bei Verwendung aktueller Access-Versionen gibt es das Problem der f&uuml;r die Bearbeitung von Daten gesperrten Tabellen gar nicht. Das Sicherheitssystem wird in Datenbanken im Format von Access 2007\/2010 (<b>.accdb<\/b>) nicht mehr unterst&uuml;tzt. Und auch f&uuml;r <b>.mdb<\/b>-Dateien gilt: Echte Systemtabellen wie <b>MSysObjects <\/b>werden zwar noch gesch&uuml;tzt, aber die Schein-Systemtabellen, deren Eigenschaft <b>Attributes <\/b>den Wert <b>2 <\/b>aufweist, werden nicht mehr gesperrt, sondern nur bez&uuml;glich der Darstellung wie Systemtabellen behandelt.<\/p>\n<p><b>Spezifikationen einfach &auml;ndern<\/b><\/p>\n<p>Nach diesem kleinen Exkurs schauen wir uns an, wie Sie die Spezifikationen einfach &auml;ndern k&ouml;nnen. Prinzipiell ist der Dialog aus Bild 11 ja schon nicht schlecht.<\/p>\n<p>Also bauen wir diesen nach. Dazu verwenden wir zwei Formulare: Das Formular <b>frmSpezifikationen <\/b>enth&auml;lt alle Daten der Tabelle <b>MSysIMEXSpecs<\/b>. Das Formular <b>sfmSpezifikationen <\/b>zeigt alle Daten der Tabelle <b>MSysIMEXColumns <\/b>an und wird sp&auml;ter als Unterformular in <b>frmSpezifikationen <\/b>eingeklinkt. <\/p>\n<p>Beginnen wir mit dem Unterformular zur Anzeige der Spalten des Im-\/Exports. Dieses erh&auml;lt die Tabelle <b>MSysIMEXColumns <\/b>als Datenherkunft. Ziehen Sie die Felder <b>FieldName<\/b>, <b>DataType<\/b>, <b>IndexType<\/b>, <b>SkipColumn<\/b>, <b>Start <\/b>und <b>Width <\/b>in den Detailbereich des Formularentwurfs (s. Bild 12). <b>Start <\/b>und <b>Width <\/b>sollen nur angezeigt werden, wenn die Spezifikation sich auf eine Datei mit fester Spaltenbreite bezieht &#8211; dazu sp&auml;ter mehr. Stellen Sie au&szlig;erdem die Eigenschaft <b>Standardansicht <\/b>des Unterformulars auf <b>Datenblatt <\/b>ein. Damit die Spalten&uuml;berschriften sp&auml;ter in Deutsch angezeigt werden, &auml;ndern Sie diese entsprechend.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic012.png\" alt=\"pic012.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 12: Entwurf des Formulars sfmSpezifikationen<\/span><\/b><\/p>\n<p>Das Hauptformular <b>frmSpezifikationen <\/b>verwendet die Tabelle <b>MSysIMEXSpecs <\/b>als Datenherkunft. Hier ziehen Sie nicht einfach alle Felder der Tabelle in den Entwurf, da einige Felder &uuml;ber andere Steuerelemente als reine Textfelder abgebildet werden sollen. Wir gehen hier Schritt f&uuml;r Schritt vor, wobei das Formular m&ouml;glichst wie das Originalformular des eingebauten Assistenten aussehen soll.<\/p>\n<p>Als Erstes k&uuml;mmern wir uns daher um das Dateiformat. Dieses wird im Feld <b>Spectype <\/b>gespeichert und kann die Werte <b>1 <\/b>(mit Trennzeichen) und <b>2 <\/b>(feste Breite) annehmen. Eingegeben wird dieser Wert &uuml;ber eine Optionsgruppe mit zwei Optionen. F&uuml;gen Sie zuerst die Optionsgruppe hinzu. Damit diese gleich an das Feld <b>Spectype <\/b>gebunden wird, klicken Sie zuerst in der Toolbox auf das Symbol f&uuml;r die Optionsgruppe und ziehen dann den Eintrag <b>SpecType <\/b>aus der Feldliste in den Detailbereich des Formulars. Nennen Sie das Steuerelement <b>ogrSpecType<\/b>. Ziehen Sie das Beschriftungsfeld nach links neben die Optionsgruppe, legen Sie die Eigenschaft <b>Beschriftung <\/b>auf den Wert <b>Dateiformat: <\/b>fest und stellen Sie die Eigenschaft <b>Rahmenart <\/b>der Optionsgruppe auf <b>Transparent<\/b> ein.<\/p>\n<p>F&uuml;gen Sie dann zwei Optionen hinzu und weisen Sie diesen die Beschriftungen <b>Mit Trennzeichen <\/b>und <b>Feste Breite <\/b>zu. Die Optionen sollen in dieser Reihenfolge die Werte <b>1 <\/b>und <b>2 <\/b>f&uuml;r die Eigenschaft <b>Optionswert <\/b>erhalten.<\/p>\n<p>Dann folgt das Feld <b>FieldSeparator<\/b>, das im Originalformular dem <b>Feldtrennzeichen <\/b>entspricht. Das Feld soll als Kombinationsfeld ausgef&uuml;hrt werden und die gleichen vier Werte wie das Originalformular enthalten. Dazu tragen Sie f&uuml;r die Eigenschaft <b>Datensatzherkunft <\/b>den folgenden Ausdruck ein:<\/p>\n<pre>'','';'';'';{Tabulatorzeichen};{Leerzeichen}<\/pre>\n<p>Da dies einer Wertliste entspricht, legen Sie den Wert der Eigenschaft <b>Herkunftsart <\/b>auf <b>Wertliste <\/b>fest.<\/p>\n<p><b>Assistenten auslesen<\/b><\/p>\n<p>Woher nehmen Sie die Wertliste, ohne dass Sie alle Werte von Hand eintragen m&uuml;ssen Ganz einfach: Die meisten Assistenten sind einfache Formulare, die in von Microsoft mitgelieferten Add-In-Datenbanken stecken &#8211; und deren Namen, Steuerelemente und Eigenschaften k&ouml;nnen Sie wie bei Formularen in der aktuellen Anwendung per VBA auslesen.<\/p>\n<p>Starten Sie also den Assistenten, dem Sie die gew&uuml;nschten Informationen entlocken m&ouml;chten. In diesem Fall starten Sie den Import\/Export-Assistenten und klicken auf die Schaltfl&auml;che <b>Erweitert&#8230;<\/b>.<\/p>\n<p>Wechseln Sie dann zum VBA-Editor und w&auml;hlen Sie den Men&uuml;befehl <b>Ausf&uuml;hren|Zur&uuml;cksetzen <\/b>aus. Dadurch sorgen Sie daf&uuml;r, dass das aktuell ge&ouml;ffnete Formular nicht mehr als modaler Dialog arbeitet &#8211; Sie k&ouml;nnen nun im VBA-Editor arbeiten und auch Anweisungen &uuml;ber das Direktfenster absetzen. <\/p>\n<p>Dazu geh&ouml;rt, dass Sie auf die <b>Forms<\/b>-Auflistung, die enthaltenen Steuerelemente und ihre Eigenschaften zugreifen k&ouml;nnen. Prima &#8211; so k&ouml;nnen Sie dann auch leicht die Werte der Eigenschaft <b>Datensatzherkunft<\/b> f&uuml;r die Kombinationsfelder mit Wertlisten herausfinden. Dies erledigt die folgende Prozedur:<\/p>\n<pre>Public Sub FormulareUndSteuerelemente()\r\n    Dim frm As Form\r\n    Dim ctl As Control\r\n    Dim cbo As ComboBox\r\n    For Each frm In Forms\r\n         Debug.Print frm.Name\r\n        For Each ctl In frm.Controls\r\n            Select Case ctl.ControlType\r\n                Case acComboBox\r\n                    Set cbo = ctl\r\n                    With cbo\r\n                        Debug.Print cbo.Name\r\n                        Debug.Print cbo.RowSource\r\n                    End With\r\n                Case Else\r\n                    Debug.Print ctl.Name, ctl.ControlType\r\n            End Select\r\n        Next ctl\r\n    Next frm\r\nEnd Sub<\/pre>\n<p>Die Prozedur durchl&auml;uft die ge&ouml;ffneten Formulare und dann deren Steuerelemente. St&ouml;&szlig;t sie auf ein Kombinationsfeld, gibt sie <b>Name <\/b>und <b>RowSource <\/b>aus, sonst nur den Namen. Damit erhalten Sie im Direktfenster schnell alle Inhalte der <b>Datensatzherkunft<\/b>-Eigenschaft der Kombinationsfelder des Assistenten und k&ouml;nnen diese in Ihren Nachbau einf&uuml;gen.<\/p>\n<p><b>Weitere Steuerelemente<\/b><\/p>\n<p>Mit dem Kombinationsfeld zur Eingabe der Textbegrenzungszeichen gehen Sie zun&auml;chst genau so wie bei den Feldtrennzeichen vor, und auch die Sprache und die Codepage erledigen Sie auf diese Weise. <\/p>\n<p>Dabei ist zu beachten, dass die Wertlisten jeweils Werte f&uuml;r zwei Spalten anzeigen, also eine ID und den eigentlichen Anzeigewert. Um dem gerecht zu werden, stellen Sie die Eigenschaften <b>Spaltenanzahl <\/b>und <b>Spaltenbreiten <\/b>jeweils auf <b>2 <\/b>und <b>0cm <\/b>ein. Die Sprache dient dabei lediglich zum Filtern der Eintr&auml;ge, die im Kombinationsfeld zur Auswahl der Codepage angezeigt werden. Die Werte des Kombinationsfeldes <b>cboSprache <\/b>sehen so aus:<\/p>\n<pre>0;Alle;1031;Deutsch<\/pre>\n<p>Beim Feld zur Auswahl des Feldtrennzeichens ergibt sich ein kleines Problem: Es kann sein, dass kein Feldtrennzeichen verwendet werden soll. In diesem Fall enth&auml;lt das zugrunde liegende Feld eine leere Zeichenkette als Wert. Dies wird im Originaldialog mit dem Ausdruck <b>{kein} <\/b>gekennzeichnet. In unserem Nachbau erscheint aber leider nur die leere Zeichenkette. Es gibt jedoch eine einfache L&ouml;sung. Tragen Sie einfach den folgenden Ausdruck f&uuml;r die Eigenschaft <b>Format <\/b>des Kombinationsfeldes ein:<\/p>\n<pre>@;&quot;{kein}&quot;<\/pre>\n<p>Dadurch zeigt das Steuerelement den Ausdruck <b>{kein} <\/b>an, wenn es tats&auml;chlich den Wert <b>Null <\/b>oder eine leere Zeichenfolge als Wert enth&auml;lt.<\/p>\n<p>F&uuml;r das Kombinationsfeld <b>cboLanguage <\/b>legen Sie daher eine kleine Prozedur an, die durch das Ereignis <b>Nach Aktualisierung <\/b>ausgel&ouml;st wird und eine weitere Prozedur namens <b>CodepagesAktualisieren<\/b> aufruft:<\/p>\n<pre>Private Sub cboLanguage_AfterUpdate()\r\n    CodepagesAktualisieren\r\nEnd Sub<\/pre>\n<p>Diese wiederum zeigt die verf&uuml;gbaren Codepages je nach Einstellung (<b>Deutsch<\/b>\/<b>Alle<\/b>) an:<\/p>\n<pre>Private Sub CodepagesAktualisieren()\r\n    Select Case Me!cboLanguage\r\n        Case 0 ''Alle\r\n            Me!cboFileType.RowSource = &quot;864;&quot;&quot;Arabisch (864)&quot;&quot;; ...&quot;\r\n        Case 1031 ''Deutsch\r\n            Me!cboFileType.RowSource = &quot;21027;&quot;&quot;Ext Alpha Kleinbuchstaben&quot;&quot;;...&quot;\r\n    End Select\r\nEnd Sub<\/pre>\n<p>Die Listen sind nat&uuml;rlich wesentlich l&auml;nger als hier dargestellt. Es gibt noch zwei kleine Haken: <\/p>\n<ul>\n<li class=\"aufz-hlung\">Die Eigenschaft f&uuml;r die Sprache wird nicht in der Tabelle gespeichert und<\/li>\n<li class=\"aufz-hlung\">die Wertlisten f&uuml;r das Kombinationsfeld enthalten Werte gr&ouml;&szlig;er als 32.768. Leider hat Microsoft aber das Feld, in dem die Zahl f&uuml;r die Codepage gespeichert wird, nur als <b>Integer<\/b> ausgelegt.<\/li>\n<\/ul>\n<p>K&uuml;mmern wir uns zun&auml;chst um das <b>Integer<\/b>-Problem. Microsoft speichert Werte gr&ouml;&szlig;er als 32.768 einfach als Differenz von 65.536 und dem Wert und setzt ein negatives Vorzeichen davor. Der Einfachheit halber &auml;ndern wir direkt in der Wertliste alle Werte so ab. Also soll ein Standardwert angezeigt werden, wobei bevorzugt der Eintrag <b>Deutsch <\/b>erscheinen soll. Nur wenn die aktuell ausgew&auml;hlte Codepage nicht in dieser Liste vorkommt, verwenden wir den Eintrag <b>Alle<\/b>. Wie finden wir aber heraus, ob die Codepage in der Liste aller Sprachen enthalten ist, aber nicht in jener der deutschen Sprachen Dazu &auml;ndern wir einfach die in der Liste verwendeten ID-Werte. Alle Werte, die gr&ouml;&szlig;er als 32.768 sind, werden von 65.536 abgezogen und mit einem negativen Vorzeichen versehen &#8211; fertig!<\/p>\n<p>Nun zum zweiten Problem, der Einstellung der Sprache entsprechend dem Wert im Feld <b>FileType <\/b>(im Formular unter <b>Codepage <\/b>zu finden).<\/p>\n<p>Wir ben&ouml;tigen einige weitere Codezeilen in der Ereignisprozedur, die durch das Ereignis <b>Beim Anzeigen <\/b>des Formulars ausgel&ouml;st wird:<\/p>\n<pre>Private Sub Form_Current()\r\n    Dim lngFileType As Long\r\n    lngFileType = Nz(Me!cboFileType)\r\n    Me!cboLanguage = &quot;1031&quot;\r\n    CodepagesAktualisieren\r\n    Me!cboFileType.SetFocus\r\n    If Len(Me!cboFileType.Text) = 0 Then\r\n        Me!cboLanguage = 0\r\n        CodepagesAktualisieren\r\n    End If\r\n    Me!cboFileType = lngFileType\r\nEnd Sub<\/pre>\n<p>Die Prozedur speichert zun&auml;chst die ID des <b>FileTypes<\/b> zwischen und stellt die Sprache auf <b>Deutsch <\/b>ein. Die Wertliste des Kombinationsfeldes zur Auswahl der Codepages wird entsprechend aktualisiert.<\/p>\n<p>Nun kommt der Trick: Wenn der f&uuml;r das Feld <b>FileType <\/b>festgelegte Wert nicht in der Liste der Codepages f&uuml;r die Sprache <b>Deutsch <\/b>vorliegt, zeigt das Kombinationsfeld schlicht keinen Wert an.<\/p>\n<p>Dies pr&uuml;fen wir, indem wir den Fokus auf dieses Steuerelement verschieben und die Eigenschaft <b>Text <\/b>auslesen, also den angezeigten Wert. Ist die L&auml;nge dieser Zeichenkette gleich <b>0<\/b>, stellt die Prozedur die Sprache auf <b>0 <\/b>ein (also <b>Alle<\/b>) und aktualisiert die Liste der Codepages erneut. Nun braucht nur noch die Codepage aus dem zwischengespeicherten Wert wiederhergestellt zu werden.<\/p>\n<p class=\"zwischen-berschrift-oberer-spaltenrand\">Datum, Zeit und Zahlen<\/p>\n<p>Kommen wir zum Block Datum, Zeit und Zahlen des Originaldialogs. Die hier verwendeten Steuerelemente weisen keine Besonderheiten auf &#8211; sehen Sie einfach die Beispieldatenbank ein, um ihre Eigenschaften zu betrachten.<\/p>\n<p>Schlie&szlig;lich f&uuml;gen Sie das zuvor erstellte Unterformular <b>sfmSpezifikationen <\/b>in das Formular <b>frmSpezifikationen <\/b>ein. Pr&uuml;fen Sie danach die beiden Eigenschaften <b>Verkn&uuml;pfen von <\/b>und <b>Verkn&uuml;pfen nach <\/b>des Unterformular-Steuerelements. Diese sollten beide den Wert <b>SpecID <\/b>enthalten. Falls dies nicht der Fall ist, tragen Sie die Werte nach.<\/p>\n<p>Ein Wechsel in die Formularansicht zeigt, dass es auch im Unterformular noch zwei Felder gibt, die eigentlich als Kombinationsfelder ausgelegt werden sollten: <b>Datentyp <\/b>und <b>Indiziert<\/b>.<\/p>\n<p>Dies holen Sie nach, indem Sie zur&uuml;ck in die Entwurfsansicht wechseln und diese mit dem Kontextmen&uuml;eintrag <b>&auml;ndern zu|Kombinationsfeld <\/b>umwandeln.<\/p>\n<p>Danach f&uuml;gen Sie die entsprechenden Wertlisten zu den Eigenschaften <b>Datensatzherkunft <\/b>der beiden Kombinationsfelder hinzu und stellen auch die Eigenschaft <b>Herkunftsart <\/b>auf den Wert <b>Wertliste <\/b>ein. Die Wertlisten ermitteln Sie mit einer erweiterten Version der oben vorgestellten Prozedur <b>FormulareUndSteuerelemente<\/b>. Sie finden diese im Modul <b>mdlImportExport<\/b>.<\/p>\n<p>Das Formular sieht samt Unterformular wie in Bild 13 aus. Verglichen mit dem Originaldialog fehlen nur noch Kleinigkeiten, die aber teilweise gar nicht mehr n&ouml;tig sind. Da das Formular an die Tabelle <b>MSysIMEXSpecs <\/b>gebunden ist, m&uuml;ssen Sie beispielsweise nicht erst eine Spezifikation laden, um ihre Daten anzuzeigen &#8211; Sie k&ouml;nnen einfach durch die Spezifikationen hindurchbl&auml;ttern.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic013.png\" alt=\"pic013.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 13: Entwurf des Formulars frmSpezifikationen<\/span><\/b><\/p>\n<p>Da &auml;nderungen an den in gebundenen Formularen angezeigten Daten einfach gespeichert werden k&ouml;nnen, f&auml;llt auch die Schaltfl&auml;che zum Speichern der Spezifikation flach. Allerdings fehlt in diesem Fall noch ein wichtiges Feld der Tabelle <b>MSysIMEXSpecs<\/b>: n&auml;mlich der Name der Spezifikation. Dieses Feld f&uuml;gen Sie noch ganz oben im Formular ein.<\/p>\n<p>Au&szlig;erdem fehlt noch eine Funktion, welche in Abh&auml;ngigkeit von der Auswahl der Option <b>Dateiformat <\/b>(<b>Mit Trennzeichen<\/b>\/<b>Feste Breite<\/b>) die beiden Felder <b>Start <\/b>und <b>Breite <\/b>des Unterformulars ein- und ausblendet.<\/p>\n<p>Legen Sie dazu eine neue Prozedur an, welche die beiden Steuerelemente <b>txtStart <\/b>und <b>txtWidth <\/b>in Abh&auml;ngigkeit vom Wert der Optionsgruppe ein- und ausblendet. Diese Prozedur sieht wie in <span class=\"verweis-ohneumbruch\"><a href=\"#anker-49-anchor\">Listing 1<\/a><\/span> aus.<\/p>\n<p class=\"listingueberschrift\">Listing 1: Diese Prozedur f&uuml;hrt den eigentlichen Suchvorgang durch.<\/p>\n<pre>Private Sub SteuerelementeEinAusblenden()\r\n    Dim sfm As Form\r\n    Set sfm = Me.sfmSpezifikationen.Form\r\n    Select Case Me!ogrSpecType\r\n        Case 1 ''Mit Trennzeichen\r\n            sfm.Controls(&quot;txtStart&quot;).ColumnHidden = True\r\n            sfm.Controls(&quot;txtWidth&quot;).ColumnHidden = True\r\n        Case 2 ''Feste Spaltenbreite\r\n            sfm.Controls(&quot;txtStart&quot;).ColumnHidden = False\r\n            sfm.Controls(&quot;txtWidth&quot;).ColumnHidden = False\r\n    End Select\r\nEnd Sub<\/pre>\n<p>Diese Prozedur soll nicht nur ausgel&ouml;st werden, wenn der Benutzer die Einstellung der Optionsgruppe &auml;ndert, sondern auch beim Wechseln des Datensatzes. Legen Sie also die folgenden beiden Ereigniseigenschaften an:<\/p>\n<pre>Private Sub ogrSpecType_AfterUpdate()\r\n    SteuerelementeEinAusblenden\r\nEnd Sub\r\nPrivate Sub Form_Current()\r\n    SteuerelementeEinAusblenden\r\n    ... weitere bereits vorhandene Anweisungen\r\nEnd Sub<\/pre>\n<p><b>Zusammenfassung und Ausblick<\/b><\/p>\n<p>Das fertige Formular sieht nun wie in Bild 14 aus. Wenn Sie die L&ouml;sung in eigenen Datenbanken einsetzen m&ouml;chten, brauchen Sie nur die beiden Formular <b>frmSpezifikationen <\/b>und <b>sfmSpezifikationen <\/b>in diese Datenbank zu importieren und gegebenenfalls bei <b>.mdb<\/b>-Datenbanken die Tabellen <b>MSysIMEXSpecs <\/b>und <b>MSysIMEXColumns <\/b>zu entsichern. Danach k&ouml;nnen Sie nach Lust und Laune bestehende Spezifikationen anpassen.<\/p>\n<p><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2011_04\/ImportExportSpezifikationen-web-images\/pic014.png\" alt=\"pic014.png\" \/><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 14: Das fertige Formular zur Bearbeitung von Spezifikationen<\/span><\/b><\/p>\n<h3>Downloads zu diesem Beitrag<\/h3>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>ImportExportSpezifikationen.mdb<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/{38354293-0B70-44ED-8E8A-9E203C73261F}\/aiu_786.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wer oft Daten importiert oder exportiert, wird dies in vielen F&auml;llen mit den entsprechenden Assistenten und den damit erzeugten Spezifikationen erledigen. Falls nicht, erhalten Sie in diesem Beitrag eine kurze Einf&uuml;hrung in die notwendigen Schritte. Au&szlig;erdem erfahren Sie, wo Access die Spezifikationen speichert und wie Sie diese ganz schnell &auml;ndern, ohne extra den Assistenten daf&uuml;r &ouml;ffnen zu m&uuml;ssen.<\/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":[662011,66042011,44000026],"tags":[],"class_list":["post-55000786","post","type-post","status-publish","format-standard","hentry","category-662011","category-66042011","category-Interaktiv"],"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>Import\/Export-Spezifikationen im Griff - 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\/ImportExportSpezifikationen_im_Griff\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Import\/Export-Spezifikationen im Griff\" \/>\n<meta property=\"og:description\" content=\"Wer oft Daten importiert oder exportiert, wird dies in vielen F&auml;llen mit den entsprechenden Assistenten und den damit erzeugten Spezifikationen erledigen. Falls nicht, erhalten Sie in diesem Beitrag eine kurze Einf&uuml;hrung in die notwendigen Schritte. Au&szlig;erdem erfahren Sie, wo Access die Spezifikationen speichert und wie Sie diese ganz schnell &auml;ndern, ohne extra den Assistenten daf&uuml;r &ouml;ffnen zu m&uuml;ssen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-22T21:56:55+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644\" \/>\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=\"19\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Import\\\/Export-Spezifikationen im Griff\",\"datePublished\":\"2020-05-22T21:56:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/\"},\"wordCount\":3437,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/636ddfec1efb45efb6a603d1dacb3644\",\"articleSection\":[\"2011\",\"4\\\/2011\",\"Interaktiv\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/\",\"name\":\"Import\\\/Export-Spezifikationen im Griff - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/636ddfec1efb45efb6a603d1dacb3644\",\"datePublished\":\"2020-05-22T21:56:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/636ddfec1efb45efb6a603d1dacb3644\",\"contentUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/636ddfec1efb45efb6a603d1dacb3644\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/ImportExportSpezifikationen_im_Griff\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Import\\\/Export-Spezifikationen im Griff\"}]},{\"@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":"Import\/Export-Spezifikationen im Griff - 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\/ImportExportSpezifikationen_im_Griff\/","og_locale":"de_DE","og_type":"article","og_title":"Import\/Export-Spezifikationen im Griff","og_description":"Wer oft Daten importiert oder exportiert, wird dies in vielen F&auml;llen mit den entsprechenden Assistenten und den damit erzeugten Spezifikationen erledigen. Falls nicht, erhalten Sie in diesem Beitrag eine kurze Einf&uuml;hrung in die notwendigen Schritte. Au&szlig;erdem erfahren Sie, wo Access die Spezifikationen speichert und wie Sie diese ganz schnell &auml;ndern, ohne extra den Assistenten daf&uuml;r &ouml;ffnen zu m&uuml;ssen.","og_url":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/","og_site_name":"Access im Unternehmen","article_published_time":"2020-05-22T21:56:55+00:00","og_image":[{"url":"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"19\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Import\/Export-Spezifikationen im Griff","datePublished":"2020-05-22T21:56:55+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/"},"wordCount":3437,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#primaryimage"},"thumbnailUrl":"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644","articleSection":["2011","4\/2011","Interaktiv"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/","url":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/","name":"Import\/Export-Spezifikationen im Griff - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#primaryimage"},"thumbnailUrl":"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644","datePublished":"2020-05-22T21:56:55+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#primaryimage","url":"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644","contentUrl":"http:\/\/vg06.met.vgwort.de\/na\/636ddfec1efb45efb6a603d1dacb3644"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/ImportExportSpezifikationen_im_Griff\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Import\/Export-Spezifikationen im Griff"}]},{"@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\/55000786","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=55000786"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000786\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}