Office: (Office 2010) Felder in Word per Makro füllen

Helfe beim Thema Felder in Word per Makro füllen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo! Ich hätte noch eine Anregung *wink.gif*: Immer den VBA-Code einer Makroaufzeichnung nacharbeiten, denn ActiveDocument und Selection würde ich... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von fasp84, 27. November 2010.

  1. Felder in Word per Makro füllen


    Hallo!

    Ich hätte noch eine Anregung *wink.gif*:
    Immer den VBA-Code einer Makroaufzeichnung nacharbeiten, denn ActiveDocument und Selection würde ich als "Auf gut Glück"-Programmierung nennen. *wink.gif*
    Code:
    Anm.: vielleicht würde auch Bookmark.Text (ohne Range) funktionieren.

    mfg
    Josef
     
  2. Als Anregung verstehe ich das GANZE sowieso - wie soll man sonst was lernen? *wink.gif*

    Ja und nein - Diese Lisbox wäre überflüssig, da er direkt auf die Lisbox der Auswahl zugreifen könnte!

    Und da liegt meiner Meinung nach auch ein Problem - bzw. solange es nicht mehr Textbausteine als Textmarken gibt...!
    In meiner Bsp-DB ist übrigens als Beigabe noch die Prüfung der Existenz der Textmarke dabei! Somit kann man vorher prüfen, ob das gewählte Doc auch die entsprechende Textmarke besitzt - oder wie im Bsp.-Code enstsprechend reagieren!

    Generell versuche ich fast alle Berichte und Schreiben von einem neuen Doc her auf zu bauen - so habe ich alle Freiheiten und bin nicht gezwungen auf Vorlagen zurück zu greifen, welche dann dem Nutzer schon mal abhanden kommen können!

    @josef: Habe ich ja von dir auch mal gelernt: Nur definierte Zustände sind annehmbare Zustände *biggrin.gif*
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  3. Hallo,
    also ich versuche hier nochmal ausführlich auf alle Fragen einzugehen ;-)

    Es ist wie folgt aufgebaut:

    Formular (Angebot) ->
    tbl_Autotext (BE) -> tmp_Memo (FE) - Hier wird aus dem Backend temporär ins Frontend übergeben. In der Tabelle, stehen ID's, Textfelder (für die Abkürzung z.B. "SGDH", Memofelder (beinhaltet den Text z.B. "Sehr geehrte Damen und Herren")

    Im Angebotsformular gibt es weitere Textfelder, welche vom Mitarbeiter auszufüllen sind:

    Kunde, Ansprechpartner, Anschrift, Stadt - (Diese Felder werden reibungslos in Word übergeben mittels VBA ->

    Code:
    Ich hatte geplant, dass im Angebotsformular nochmal eine Übersicht mittels Listbox vorhanden ist. Damit die Mitarbeiter sehen, was sie für Textbausteine ausgewählt haben. Diese zeigt mir den Wert "Textfeld" aus der tmp_Memo an.

    Und nun geht es darum, dass nur das erste Memofeld sprich Textbaustein übergeben wird. Aber keine weiteren mehr. Dies habe ich versucht mit folgendem Code abzubilden:

    Code:
    Ich schätze mal, dass es nur eine Kleinigkeit ist. Denn der Textbaustein wird ja übergeben, aber leider nur der erste.

    Tut mir leid, aber ich bin nicht so der VBA-Crack und versuche mir das immer mittels Bausteinen o.ä. zusammen zubauen. Daher kann es natürlich sein, dass der von mir gepostete Code nicht der beste ist.

    Aber ich bin für neue Vorschläge sehr gerne dankbar.

    Vielen Dank für Eure bisherige Mühe.
    Viele Grüße
    Fabian


    P.S.:

    Das Listfeld muss nicht zwingend vorhanden sein, wenn Ihr eine bessere Lösung des ganzen habt. Dann bin ich natürlich sehr offen für Eure Vorschläge um das umzusetzen.
     
  4. Felder in Word per Makro füllen

    Tut mir leid - aber ich sehe immer noch kein Konzept hinter dem GANZEN!

    Den Teil, dass du in Angebote Felder hast und nach Word überträgst ist klar - auch dass du Textbausteine übertragen willst ist klar - aber meiner Meinung nach hängt dass schon viel früher!

    Wenn das dein ganzer Code ist, dan hakte es überall!

    1. Hat dein Codemodule ganz oben folgendes Aussehen:
    Code:
    Die 2. Zeile ist für dich von Bedeutung - da sie dich dazu zwingt eindeutige Definitionen zu vergeben!

    2. Du verweist zwar auf ein neues Word Object - aber wo setzt du die Variable oder verweist du auf das Document Object?
    Code:
    Jetzt erst solltest du anfangen mit den Objekten zu arbeiten!
    Denn jetzt ist definitiv objDoc auch dein neues Dokument!
    Und mit ItemData ist kein Spass gemeint, sondern der erste Wert deines Listenfeldes *wink.gif*
    Code:
    So nun bleiben noch die eigentlichen Fragen:
    Wie wählst du die Tbs aus?
    Wie befüllst du dein Listenfeld mit den ausgewählten TB´s?

    Wenn du die Fragen beantworten kannst - dann kann man dir auch evtl. helfen!
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  5. Ist Bookmarks die Standardauflistung der Word.Document-Klasse? Oder fehlt da eventuell das Ansprechen der Bookmarks-Eigenschaft?

    mfg
    Josef
     
  6. STIMMT! - hatte ich auch nicht mehr darüber nachgedacht ...
    Code:
    So muss das aussehen *wink.gif*
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  7. Guten Morgen,

    gute Fragen und hoffentlich gute Antworten ;-)

    Also das Listenfeld im UFO "memo_selected" hat beinhaltet die Abfrage "qu_memo" und diese besteht aus folgendem SQL-String zum befüllen:

    Code:
    Des Weiteren habe ich den Option Explicit im Code in Zeile zwei stehen. Meine ersten Zeilen sind:

    Code:
    Zum Thema Tabellenauswahl bzw. Textauswahl:
    Der Button "Autotext" öffnet das Formular "memo". Dort ist ein Memofeld hinterlegt, welches mit der Tastenkombination "Strg + Leertaste" ein Textauswahlformular namens "Auswahl/Autotext" öffnet. Dort wird mit einem Doppelklick der Datensatz ausgewählt und in das Memofeld des Formulars "memo" reingeschrieben.
    Dieses Feld "memo" beruht auf dem Memofeld der temporären Tabelle (tmp_Memo)




    Ich habe den Code mal mit Euren guten Vorschlägen umgebaut:
    Code:
    Aber dort kommt in der Zeile ein Fehler:
    Code:
    Dieser meldet einen Syntaxfehler.

    Ich hoffe die Infos konnten Euch weiterhelfen. Und hoffe, dass Ihr mir helfen könnt dieses Problem zu beheben.

    Vielen Dank für Eure Mühe.
     
  8. Felder in Word per Makro füllen

    da fehlen Klammern

    Code:
    und hier fehlt auch noch was :
    Code:
    und bitte beachten : itemdata(1) gibt Dir die zweite Zeile im Listenfeld zurück, weil bei 0 angefangen wird zu zählen
     
  9. .. und du must da "C:\Users\xxx\Angebot.dotx" natürlich deinen Pfad zu deiner Angebot.dot bzw. .dotx eingeben, falls das nicht geschehen ist!

    und bitte beachten : itemdata(1) gibt Dir die zweite Zeile im Listenfeld zurück, weil bei 0 angefangen wird zu zählen

    Nobody is perfect *wink.gif*


    Sehe da eben noch was:
    Code:
    Das kann so überhaupt nicht gehen!
    Versuche auch mal die Logik hinter dem Code zu verstehen!

    Ändern zu:
    Code:
    ACHTUNG! Bei Documents nicht Open sondern Add!

    Ändere die folgenden Zeilen dementsprechend ab:
    Aus dem Zweizeiler wird dann ein Einzeiler:
    .Bookmarks.Item("Kunde").Range.Text = Me!betreiber.Value
    Name deiner Textmarke
    Das was in die Textmarke rein soll!
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  10. Hallo,
    Danke für die Anpassungen :-)

    Nun habe ich den Code so umgeschrieben, wie vorgeschlagen:

    Code:
    Aber er bringt einen Laufzeitfehler 91: Objektvariable oder With-Blockvariable nicht festgelegt und beim debuggen markiert er diese Zeile

    Code:
    Habe ich was übersehen?

    Vielen Dank *Smilie
     
  11. objword muss natürlich auch zugewiesen werden... Code:
     
    Scorefun, 1. Dezember 2010
    #26
  12. Hallo Ralf,
    danke war ja klar.
    Vor lauter Bäumen und so weiter ;-)

    Allerdings läuft der Code jetzt soweit durch, bekommt nur noch an einer Stelle ein Fehler.

    Code:
    Hier bringt er einen Laufzeitfehler 438: Objekt unterstützt diese Eigenschaft oder Methode nicht... :-(
     
  13. Felder in Word per Makro füllen

    Code lesen und verstehen...

    Code:
    Was ist obj.? Von dem war nie die Rede!
    Ersetze das mal durch objDoc bzw. durch die With-Anweisung nur durch einen . - läufts jetzt?


    @Scorfun: Durch >> Set objDoc = objWord.Documents.Add("C:\Users\xxx\desktop\angebot.dotx")
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  14.  
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Scorefun, 1. Dezember 2010
    #29
  15. Frei nach deinem Motto *cool.gif*
    Vorsicht Beim Ausprobieren...
    Auch Chaotischer Code Entwickelt Sich Ständig
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
Thema:

Felder in Word per Makro füllen

Die Seite wird geladen...
  1. Felder in Word per Makro füllen - Similar Threads - Felder Word Makro

  2. Dropdown Feld und Tabulator

    in Microsoft Word Hilfe
    Dropdown Feld und Tabulator: Hallo Zusammen! Ich habe in einem Word-Dokument ein Dropdown Feld (Inhaltssteuerelement) erstellt. Im restlichen Dokument sind viele Textformularfelder. Wenn ich die Bearbeitung einschränke, kann...
  3. Brieftext in Abh. von Dropdown-Feld

    in Microsoft Word Hilfe
    Brieftext in Abh. von Dropdown-Feld: Hallo zusammen, ich bin zwar relativ firm in Office-Programmen, ärgere mich aber seit Tagen mit einer Idee herum, den ich bisher leider nicht erfüllen konnte ;) Wir sind eine Schule, haben eine...
  4. "Auflagen"-Feld in Word Zitierstil APA integrieren

    in Microsoft Word Hilfe
    "Auflagen"-Feld in Word Zitierstil APA integrieren: Ich benutze übrigens Word 2013, was in der Präfix-Liste nicht aufgeführt ist. Ich muss für eine wissenschaftliche Arbeit ein Literaturverzeichnis anlegen und habe das Problem, dass Office kein...
  5. In Word automatisch Felder ausfüllen

    in Microsoft Word Hilfe
    In Word automatisch Felder ausfüllen: Hallo, ich habe ein Dokument in Open Office, welches Eingabefelder enthält. Beim Öffnen der Datei erscheint also das Eingabefeld automatisch und ich gebe diverse Werte ein für verschiedene...
  6. Word mac fehlendes Tag-Feld beim Quellenmanager

    in Microsoft Word Hilfe
    Word mac fehlendes Tag-Feld beim Quellenmanager: Hallo, ich bin auf folgendes Problem gestoßen und hoffe auf Hilfe :-) Um die Fußnoten übersichtlich zu halten, würde ich gerne "Tags" in diesen verwenden. Der Tag wird dann als Quelle...
  7. Formatierung eines Seriendruckfeldes im Makro

    in Microsoft Word Hilfe
    Formatierung eines Seriendruckfeldes im Makro: Hallo, ich habe folgende Zeile im Makro : ActiveDocument.MailMerge.Fields.Add Range:=Selection.Range, Name:="PLZ". Durch den Datenaustausch aus einer csv-Datei fällt eine mögliche Vornull weg....
  8. Problem mit Feld in Word 2003

    in Microsoft Word Hilfe
    Problem mit Feld in Word 2003: Hallo, Hallo ihr, ich habe in einem Word Dokument eine IF Abfrage die prüft ob eine übergebenes Feld leer ist, wenn nicht soll ein bestimmter Text als Überschrift angezeigt werden. Wenn das Feld...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden