{"id":88012023,"date":"2019-11-08T11:47:22","date_gmt":"2019-11-08T11:47:22","guid":{"rendered":"http:\/\/access-basics.de\/index.php\/88012023.html"},"modified":"2019-11-08T11:47:22","modified_gmt":"2019-11-08T11:47:22","slug":"88012023","status":"publish","type":"page","link":"https:\/\/vbentwickler.de\/88012023\/","title":{"rendered":"Visual Basic Entwickler 01\/2023"},"content":{"rendered":"<h3>\u00dcbersetzen mit Word und DeepL<\/h3>\n<p>Nachdem wir schon gezeigt haben, wie Du Texte in einer Excel-Tabelle \u00fcbersetzen kannst, schauen wir uns nun an, wir die die DeepL-Techniken f\u00fcr die Gegen\u00fcberstellung der englischen und der deutschen Version eines Textes nutzen k\u00f6nnen. Dazu wollen wir bei einem Text beginnen, der sich in einem Word-Dokument befindet und diesen in ein neues Dokument \u00fcbertragen, wo wir die einzelnen Abs\u00e4tze des Textes in jeweils eine Zelle in der linken Spalte einer Word-Tabelle einf\u00fcgen. Nachdem wir den Text so auf die Zellen einer Tabelle aufgeteilt haben, wollen wir in der rechten Spalte per Aufruf der DeepL-REST-API die \u00dcbersetzung in der gew\u00fcnschten Sprache unterbringen. Das Ergebnis: Die \u00dcbersetzung eines Textes, wobei jeweils ein Absatz in der einen Sprache dem gleichen Absatz in der anderen Sprache gegen\u00fcbergestellt wird.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/uebersetzen_mit_Word_und_DeepL\">Zum Artikel &#8230;<\/a><\/p>\n<h3>COM-Add-In zum \u00dcbersetzen von Word-Dokumenten<\/h3>\n<p>Das Internet bietet f\u00fcr beinahe jeden Zweck einen Service. Auch f\u00fcr das \u00dcbersetzen von Texten. Ein Anbieter hei\u00dft DeepL. Er bietet nicht nur eine Benutzeroberfl\u00e4che, in die man Texte eingeben kann, die direkt \u00fcbersetzt werden, sondern auch noch eine API. Dieser k\u00f6nnen wir programmgesteuert Texte \u00fcbergeben und die \u00dcbersetzung entgegennehmen. Das ist sehr praktisch f\u00fcr diejenigen Bereiche der Programmierung, wo man Texte in einer anderen oder in mehreren Sprachen braucht. In diesem Artikel wollen wir uns jedoch ansehen, wie wir aus den Techniken, die wir in weiteren Artikeln vorgestellt haben, ein COM-Add-In bauen, das sich nahtlos in die Word-Benutzeroberfl\u00e4che eingliedert und auf Knopfdruck komplette Dokumente oder auch nur markierte Bereiche in die gew\u00fcnschte Sprache \u00fcbersetzt.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/COMAddIn_zum_uebersetzen_von_WordDokumenten\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Word mit VBA programmieren<\/h3>\n<p>Genau wie in Outlook oder Excel gibt es auch in Word ausreichende M\u00f6glichkeiten, um sich wiederholende Vorg\u00e4nge zu automatisieren oder zu vereinfachen. Dazu ben\u00f6tigen wir die Programmiersprache VBA und das Objektmodell zur Programmierung von Word und den darin angezeigten Dokumenten. Im vorliegenden Beitrag schauen wir uns zun\u00e4chst einmal an, wie wir von au\u00dfen, also beispielsweise von einer anderen Anwendung aus, eine Word-Instanz initialisieren und diese nutzen k\u00f6nnen. Bei den weiteren Beispielen starten wir jedoch direkt vom VBA-Projekt des aktuell ge\u00f6ffneten Word-Dokuments aus.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Word_mit_VBA_programmieren\">Zum Artikel &#8230;<\/a><\/p>\n<h3>VBA-Ereignisse in Word programmieren<\/h3>\n<p>Microsoft Word bietet f\u00fcr das Application- und f\u00fcr das Document-Objekt einige sehr interessante Ereignisse an. Diese k\u00f6nnen wir implementieren und damit auf verschiedene Benutzeraktionen wie das \u00d6ffnen, Speichern oder Schlie\u00dfen eines Dokuments oder auch auf andere Aktionen zu reagieren. In diesem Artikel stellen wir die Ereignisse vor und zeigen, wie Du diese implementieren und mit eigenem Code f\u00fcllen kannst. Damit lernst Du, wie Du auf das \u00d6ffnen, Schlie\u00dfen oder Anlegen von Dokumenten reagieren kannst oder wie sich Ereignisse programmieren lassen, die beim Drucken oder Speichern ausgel\u00f6st werden. Auch Aktionen wie ein Doppelklick oder ein Rechtsklick auf die Inhalte des Word-Dokuments lassen sich damit steuern. Wie das gelingt, zeigen wir in diesem Artikel.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/VBAEreignisse_in_Word_programmieren\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Word: Lesen und Schreiben von Abs\u00e4tzen per VBA<\/h3>\n<p>Nachdem wir in zwei weiteren Artikeln beschrieben haben, wir man auf Word-Dokumente zugreift und die Ereignisse von Word und den angezeigten Dokumenten nutzt, gehen wir nun einen Schritt weiter: Wir schauen uns an, wie wir die Inhalte von Word-Dokumenten lesen und schreiben k\u00f6nnen. Das ist nicht ganz trivial, denn nat\u00fcrlich enth\u00e4lt ein Word-Dokument nicht einfach nur Text, den wir in eine Variable \u00fcbertragen und weiterverarbeiten k\u00f6nnen. Stattdessen gibt es eine Unterteilung in Abs\u00e4tze, Bereiche, Tabellen und viele weitere Elemente. Der Fokus dieses Artikels liegt daher auf der Untersuchung dieser Elemente und wie wir diese am besten per VBA programmieren k\u00f6nnen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Word_Lesen_und_Schreiben_von_Absaetzen_per_VBA\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Rechnungen mit Word und Access<\/h3>\n<p>Office bietet verschiedene M\u00f6glichkeiten, um Rechnungen zu erstellen. Du kannst ein Worksheet in Excel dazu nutzen, eine Rechnung zu erstellen, die Berichte unter Access eignen sich recht gut daf\u00fcr, aber auch Word l\u00e4sst sich prima zum Erstellen von Rechnungen nutzen. Alle haben Vor- und Nachteile: Unter Excel ger\u00e4t das Berechnen von Betr\u00e4gen zum Kinderspiel, w\u00e4hrend mehrseitige Rechnungen eher schwierig zu realisieren sind, unter Access k\u00f6nnen Berichte recht flexibel realisiert werden, w\u00e4hrend man sich gerade f\u00fcr mehrseitige Berichte etwas einarbeiten muss \u2013 und unter Word kann man das Layout sehr einfach anpassen, w\u00e4hrend hier die Berechnung nicht so intuitiv erfolgt. Wir schauen uns eine Kombination aus Access und Word an: Die Daten stammen aus Access-Tabellen, w\u00e4hrend wir die Rechnung selbst in Word erstellen. So lassen sich auch nach dem Erstellen noch Feinheiten anpassen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Rechnungen_mit_Word_und_Access\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Word: Tabellen mit VBA programmieren<\/h3>\n<p>Tabellen sind ein wichtiges Element zur Strukturierung in Dokumenten \u2013 so auch in Microsoft Word. Tabellen f\u00fcgt man dabei normalerweise \u00fcber die Benutzeroberfl\u00e4che ein und f\u00fcllt diese manuell mit den gew\u00fcnschten Daten. Manchmal jedoch sollen Dokumente und damit auch Tabellen automatisiert erstellt werden \u2013 beispielsweise, wenn man Daten aus Anwendungen wie Access oder Excel in einem Word-Dokument weiterverarbeiten m\u00f6chte. Damit lassen sich beispielsweise gut die Rechnungspositionen in einer Rechnung oder auch Katalogdaten abbilden. In einer L\u00f6sung in einem weiteren Artikel nutzen wir eine Tabelle, um die einzelnen Abs\u00e4tze verschiedener \u00dcbersetzungen eines Textes anzuzeigen. Im vorliegenden Artikel zeigen wir, wie wir einem Word-Dokument eine Tabelle hinzuf\u00fcgen und diese mit den gew\u00fcnschten Zeilen und Spalten versehen k\u00f6nnen \u2013 und welche Techniken noch sinnvoll sein k\u00f6nnen, wenn Du Tabellen programmierst.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Word_Tabellen_mit_VBA_programmieren\">Zum Artikel &#8230;<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00dcbersetzen mit Word und DeepL Nachdem wir schon gezeigt haben, wie Du Texte in einer Excel-Tabelle \u00fcbersetzen kannst, schauen wir uns nun an, wir die die DeepL-Techniken f\u00fcr die Gegen\u00fcberstellung der englischen und der deutschen<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","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":""},"yst_prominent_words":[],"class_list":["post-88012023","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88012023","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=88012023"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88012023\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=88012023"}],"wp:term":[{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=88012023"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}