Office: (Office 2010) Dropdown-Formularfeld mit externer Liste füllen?

Helfe beim Thema Dropdown-Formularfeld mit externer Liste füllen? in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo liebe MS Office Gemeinde! Leider bin ich nur gewöhnlicher 0815 Anwender und habe nun eine etwas, wahrscheinlich für mich, heikle Aufgabe... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von fckw, 22. November 2014.

  1. Dropdown-Formularfeld mit externer Liste füllen?


    Hallo liebe MS Office Gemeinde!

    Leider bin ich nur gewöhnlicher 0815 Anwender und habe nun eine etwas, wahrscheinlich für mich, heikle Aufgabe bekommen!

    Ich soll nämlich in WORD 2010, wenn überhaupt möglich, ein Formular erstellen, welches 3 bis 4 Formularfelder zur Auswahl hat.
    Mal davon abgesehen, dass ich leider auch keine Erfahrung mit Formularen in Office-Anwendungen habe, glaube ich, dass meine Anforderung nicht unter die Kategorie "total einfach" fällt.

    Es soll so laufen:
    1. Feld (Problem-Feld)
    Dieses besteht immer aus einer Kundennumer (5stellig) (ca. 2000-3000 Einträge)
    2. Feld (Problem-Feld) (klarerweise ebenfalls ca. 2000-3000 Einträge)
    Hier soll anhand der Kundennummer (Feld 1) der Kundenname automatisch eingetragen werden
    3. Feld, reines Drop-Down mit ein paar Einträgen ohne Abhängigkeit, sollte ich schaffen *wink.gif*

    Wobei, wenn ich hier so schreibe, fällt mir ein, dass es auch schön wäre, Anhand der Kundennummer noch andere Felder automatisch zu befüllen *grins

    __________________________________________________________

    So zu meiner Vorstellung wie ich das ganze bewerkstelligen könnte:
    Ohne VBA wird es wahrscheinlich auf keinen Fall funktionieren *frown.gif* (habe überhaupt keine Ahnung davon!)

    Ich habe eine Excel oder CSV Datei in der die Daten stehen.
    Klientennummer -> Name -> Adresse -> was auch immer

    Nun möchte ich im Formular im Feld Klientennummer "22222" eingeben, er überprüft mir im Hintergrund die externe Datenquelle und befüllt die Felder.

    Möglich? Wahrscheinlich, nur nicht für mich*g*
    Habt ihr eventuell hilfreichen Lesestoff für mich?
    oder kann mir wer mit Rat und Tat zur Seite stehen? Ich fürchte, das ganze müsste aber recht detailliert sein, da ich wirklich keine Ahnung habe *frown.gif*

    Ich wäre auf jeden Fall sehr dankbar für eure Hilfe!

    ps. Nein, die Daten kommen leider nicht aus Outlook, habe sie wirklich nur in Excel oder CSV, je nachdem wie ichs mir formatiere zu Hand und es soll auch kein Serienbrief werden.
    Lediglich ein Formular wo diese Dinge automatisch ausgefüllt werden um fehlerhafte "händische Einträge" zu vermeiden.

    pps. ich habe auch schon danach gesucht, aber entweder ich weiß nicht wirklich nach was ich suchen soll, kann es nicht ordentlich benennen, oder es ist so, dass das keiner braucht^^

    Mfg
    Fckw

    :)
     
  2. Gerhard H
    Gerhard H Erfahrener User
    Hallo fckw,

    wenn du wirklich keine Ahnung von VBA hast, wirst du wohl auch nicht viel davon haben, wenn du entsprechende Tips bekommst. Du wärst ja bei jeder notwendigen Änderung aufgeschmissen!

    Aber es ginge auch ohne VBA. Schau dir mal dieses Video an:
    Ich habs ausprobiert, es klappt gut, so lange du nicht ständig die Speicherorte der beiden Dateien ändern musst.

    Schau mal, ob das was für dich ist. Notfalls könnte ich dir aber auch ein Beispiel in VBA basteln. Allerdings wünsche ich mir dazu ein Muster der Datenquelle und ein Muster vom Word-Dokument (wenigstens so in etwa), damit es möglichst wenig Anpassungsarbeiten gibt.
     
    Gerhard H, 24. November 2014
    #2
  3. Hallo Gerhard!

    Vielen Dank für den Link, das ist eigentlich genau das was ich gebraucht habe!
    Nur wenn man noch nie von einem SVERWEIS gehört hat sucht sichs auch schwer danach *grins

    Hab mich jetzt den halben Tag damit beschäftigt, weil es Aufgrund von Formatierungsfehlern nicht geklappt hat *frown.gif*

    Aber jetzt läuft es so wie ich mir das vorstelle!

    Besten Dank! *hands

    Lg
    fckw
     
  4. Dropdown-Formularfeld mit externer Liste füllen?

    Doch zu früh gefreut *frown.gif*

    Sobald ich das Formular auf einem anderen Rechner öffne kommt die Meldung, dass er die Dateien aktualisieren möchte, ok mach ich, aber dann verliert er offenbar den Bezug (im Excel-Sheet steht die Fehlermeldung "Bezug" im Feld).

    Zumindest an einem Rechner hat er den Bezug verloren, obwohl ich die Links (ALT+F9) überprüft habe und diese stimmen müssten.

    Zurück an meinem PC, aktualisiert er die Einträge nicht mehr automatisch, nachdem ich das Dokument zugemacht habe.

    Ich muss erst in die Entwickleransicht wechseln, dann F9 um zu aktualisieren, sobald ich wieder aus der Entwickleransicht raus gehe funktioniert nicht einmal F9 und er ignoriert es, obwohl im Excel die "Suche" ankommt und die richtigen Felder gewählt werden.
    Diese werden dann lediglich nicht mehr mit Word synchronisiert *frown.gif*

    Kann es was damit zu tun haben, dass die 2 Dateien auf dem Server liegen?
    Berechtigungen dürften es nicht sein, außer es hat was mit Makros oder so zu tun, welche in Excel bei allen deaktiviert sind.
    Oder kommen Konflikte, wenn mehrere Clients versuchen auf die Liste zuzugreifen in Frage?

    Die Liste und das Formular liegen beide im gleichen Ordner, ich möchte nur einen Link zu Verfügung stellen über welchen dieses Formular geöffnet werden kann.

    Danke für die Hilfe!

    Mfg
    Fckw
     
  5. Guten Morgen allerseits!

    Gibt es keine Edit-Funktion oder bin ich blind?
    Sorry für die Doppelposts!

    Weiters dürfte ich ein Problem bekommen, wenn mehrere Nutzer einen Brief verfassen und die automatische Aktualisierung aktiv ist (was zur zeit ja auch nicht zutrifft*g*), kann es dann wohl passieren, dass sich bei mir der Briefkopf ändert, weil ein anderer Nutzer eine andere Suche startet.

    Jetzt könnte ich noch, die Liste, welche sich ja leider immer wieder mal ändert, per Script oder Gruppenrichtlinie immer auf die Clients kopieren und die Vorlage mit dem lokalen Pfad gleich hinten nach.

    Kommt mir aber nicht wie eine elegante Lösung vor *wink.gif* und obs dann immer funktioniert?

    Mfg
    Fckw
     
  6. Gerhard H
    Gerhard H Erfahrener User
    Hallo Fckw,

    das sagt der ja in seinem Video selber, dass die Variante mit den Verknüpfungen ungünstig ist, wenn man sie oft in andere Ordner rumschieben muss. Da müssen jedesmal sämtliche Verknüpfungen neu erstellt werden.

    Bei allen Problemen, die irgendwie am Server oder gemeisamem Zugriff liegen, dann darfst du mich nichts fragen, davon hab ich keine Ahnung.

    Aber mal ein ganz anderes Thema: Ich hab mittlerweile eine VBA-Version gebastelt (seine Ursprünge liegen übrigens dort, wo du noch ein paar Varianten finden wirst: http://www.ms-office-forum.net/forum...d.php?t=307512 ).

    Kopier die beiden angehängten Dateien in deinen Speicherort am Server und teste, ob es funktioniert. Das Makro zieht sich anlässlich des Dokumentstarts die Daten von der Excel-Mappe und füllt sie in die Textmarken des Word-Dokuments, sobald du dort im Feld für die Kundennummer eine solche eingetragen hast UND wieder rausgeklickt hast.

    Falls das eine gangbare Möglichkeit wäre, könnte man ja versuchen, das Muster auf deine Verhältnisse umzustricken, so dass du nur deine Excel-Tabelle pflegen musst. Aber bevor ich nicht deine Musterdateien seh, versprech ich sicherheitshalber mal gar nichts.

    PS: Es gibt schon eine Edit-Funktion,aber die ist nur eine Zeit lang aktiv. Während sie das ist, hast du eine Schaltfläche "Ändern" zur Verfügung.
     
    Gerhard H, 25. November 2014
    #6
  7. Hallo Gerhard!

    Sorry, es sind einige Dinge dazwischen gekommen und dieses Projekt musste leider warten *frown.gif*

    Die Daten an sich verschiebe ich auch nicht, die liegen immer im gleichen Ordner, bzw die Verknüpfungen / Links im Word Dokument zeigen immer auf den richtigen Ordner. Aber die Lösung scheint auch aus den anderen genannten Gründen eher unpraktikabel. Also hacke ich die ab.


    Habe die 2 Dateien nun auf den Server gespeichert, die Word Datei dort ausgeführt (Word - Inhalte aktiviert) und bei der ersten Eingabe passt es, danach vermeldet er einen Laufzeitfehler 13 "Typen unverträglich".


    Im Anhang sind die beiden Beispiele. Die Excel Liste (beinhaltet auch Felder die ich jetzt nicht im Word Formular verarbeite aber der Einfachheit halber für andere Auswertungen in der Liste beibehalte, wenn sie nicht stören) und das Word Brief-Formular.

    Unter dem Datum wäre die Eingabe der Kundennummer, anhand dieser sollte er die Adressfelder ausfüllen, wenn möglich sollte auch eine manuell Eingabe, wie im von dir geposteten Link, möglich sein.
    Links davon ein Dropdown-Menü für die Auswahl diverser Kriterien und der Betreff des Dokuments.


    Habe den Threat jetzt leider nicht ganz durch, werde ich aber noch nachholen.


    Vielen Dank für deine Hilfe!

    Mfg
    Fckw
     
  8. Gerhard H
    Gerhard H Erfahrener User

    Dropdown-Formularfeld mit externer Liste füllen?

    Hallo fckw,

    "bei der ersten Eingabe passt es, danach vermeldet er einen Laufzeitfehler 13 "Typen unverträglich"
    das war mein Fehler. Anbei die korrigierte kunden.dotm zum Testen. Es sollte jetzt funktionieren. Wenn ja, würde ich versuchen, das Makro an deine Dateien anzupassen. Kann aber eine Weile dauern. Inzwischen könntest du mir folgende Fragen beantworten:

    Excel-Tabelle:
    In meinem Muster beginnt der Adressbereich ab Zeile 2 (unter den Spaltenüberschriften, weil außer den Adressdaten nichts drin ist. In deinem Muster beginnt der Adressbereich ab Zeile 9. Das kann man schon machen, allerdings musst du bei Änderungen an der Tabelle darauf achten, dass der Adressbeginn nicht verschoben wird. Sicherer wärs, du verzichtest auf die Überschrift und die SVerweis-Zeile (oder brauchst du das aus anderen Gründen noch?

    Word-Dokument:
    Die enthält noch die ganzen OLE-Links auf die Exceltabelle. Die sind ja jetzt unnütz und können gelöscht werden. Oder sind da welche dabei, die du noch brauchst?
     
    Gerhard H, 1. Dezember 2014
    #8
  9. Wow du bist echt der Hammer!

    Danke!!!

    So klappt das Word Formular auch einwandfrei.

    - - -

    Nein, die Excel Tabelle muss nicht wie bei mir mit Überschrift und SVerweis sein (Spaltenüberschriften ja, sonst kennt sich wer anderer eventuell nicht mehr aus, wobei ich das ohnehin bezweifle, auch wenn ich versuche alles zu dokumentieren), kann einfach gestaltet sein. (angepasste Version im Anhang, so ok?)


    So mal bisschen den Code durchgestöbert, auch wenn mir die Befehle unbekannt sind, kann man sich doch denken, was passiert oder zumindest passieren soll!
    Will ja auch was lernen, nicht nur deine Wissen abstauben *grins

    Code:
    Pfad, soweit klar, wo aber jetzt das Word-Formular liegt ist somit egal oder?
    Er sucht sich immer die Daten an diesem "Ort" und lädt diese in ein Array im Word-Dokument selbst (wird das bei 3000 Einträgen dann nicht träge?)? (daher brauche ich die OLE-Links wohl nicht mehr, denn für eine andere Anwendung wird die Liste in der Form nicht weiter verwendet, lediglich kopiert und "umgebaut")

    Mir ist jedoch nicht ganz klar, wie die Zeilen bearbeitet werden, sehe hier keine Art Formularfeld, welches vom Makro bearbeitet wird. (OLE-Links waren irgendwie logisch^^)
    Textmarke ist wohl die Lösung, werde ich mich mal drüber informieren *wink.gif*
    Kann man die wie Formularfelder farblich hinterlegen (der Einfachheit/Sicherheit halber?), beim Ausdruck sollten diese Hintergründe jedoch klarerweise wieder ausgeblendet werden, wenn nicht simple dann bitte keinen Aufwand betreiben!

    Sobald jedoch eine Eingabe nicht vorhanden ist und ich den Kunden manuell hin schreibe, wird das Dokument "zerstört", richtig (daher auch das mit den Farbe^^)?


    Vielen Dank für deine Hilfe und Zeit!

    Lg
    Fckw
     
  10. Gerhard H
    Gerhard H Erfahrener User
    Hallo fckw,

    deine Excelliste sieht noch genau so aus wie die alte, aber ich hätte es mir so gewünscht wie du sie auch beschrieben hast:

    Zeile 1: Spaltenüberschriften
    ab Zeile 2: Klientendaten
    Sonst nichts. So hab ich sie mal hergerichtet.

    Zur Zeile: datei = ThisDocument.Path & "\kundenliste.xlsx":
    Das bedeutet: In dem Ordner, in dem das WordDokument mit dem Makro gespeichert ist, muss auch die Excel-Tabelle liegen. Welcher Ordner das ist, ist egal. Wenn du getrennte Speicherorte haben willst, geht das natürlich auch, aber dann must du eben den Pfad für die Excel-Tabelle im Klartext angeben, z.B.: datei = "H:\temp\test\klientenliste.xlsx"

    Zur Schnelligkeit:
    Ich hab meine Kundenliste mal auf 2400 Zeilen erweitert. Mag sein, dass beim Dokumentstart das Einlesen ein kleines bisschen dauert, aber es wird nicht reichen, um Kaffeewasser aufzusetzen. Das Eintragen Auswahl des Kunden 2340 geschieht bei mir genau so schnell wie in der Tabelle mit nur sieben Kunden. Da wär ich also zuversichtlich.

    Zum Übertrag ins Word -Dokument:
    Ich hab in meinem ersten Muster Textmarken verwendet. Dabei wird erst geprüft, ob die Textmarke überhaupt existiert, dann gefüllt, und, da sie beim Füllen zerstört wird, anschließend wieder hergestellt.

    Du musst aber keine Textmarken nehmen. Alternativen wären
    • Rich-Text-Felder (können einzeln gegen versehentliches Löschen geschützt werden)
    • Formulartextfelder aus den Vorversionstools (erfordern aber zwingend Dokumentschutz)
    • Tabellenzellen. Letztere würde ich bevorzugen, da man sie einfach händisch überschreiben kann, ohne etwas zu zerstören. Und sehen tut man sie auch dann, wenn man die Rahmenlinien weglässt, solange du die Gitternetzlinien eingeblendet lässt. Da brauchts wohl keine Farbe.

    Ich denke, dein Brieflayout gibt eine Adresstabelle her und mach dir hiermit einen Vorschlag mit einem entsprechend hergerichteten Dokument.
     
    Gerhard H, 1. Dezember 2014
    #10
  11. Vielen Dank!!!

    Werde morgen damit experimentieren *Smilie


    Wünsche einen schönen Abend!

    Lg
    Fckw
     
  12. Hallo Gerhard!

    Funktioniert so weit ich das jetzt testen konnte, bis auf 1-2x dieser "Laufzeitfehler"-Meldungen, spitze!
    Denke, da habe ich schon vorher irgendwas verbrochen, dass er mir die gebracht hat^^

    Ich hab mir wieder das Makro angesehen, da ich versucht habe noch ein weiteres Dropdown-Feld für den Sachbearbeiter einzufügen, aber sobald ich auch nur einen Backslash oder auch nur das Feld einfüge funktioniert das ganze nicht mehr.
    Verstehe ich nicht *frown.gif*

    Betreff / "Ordner" / Sachbearbeiter / KlientenNummer

    Könntest du mir das Geheimnis verraten warum es dann ein Problem gibt?


    Im Anhang habe ich das hoffentlich wirklich fertige Formular, zumindest streike ich, wenn sie noch was ändern wollen *redface.gif*

    Wäre wirklich nett von dir, wenn du mir da noch einmal helfen könntest!

    Lg
    Fckw
     
  13. Gerhard H
    Gerhard H Erfahrener User

    Dropdown-Formularfeld mit externer Liste füllen?

    Hallo fckw,

    da war jetzt schwer was Raten, denn in deiner Form3.dotm war gar kein Makro drin.

    Aber möglicherweise hast du übersehen, dass es außer den zwei Makros in ThisDocument auch noch ein Modul1 gibt, dass nur folgende Zeile enthält:

    Public kundendaten As Variant

    Das ist die Variable, in der die Daten aus der Exceltabelle gespeichert sind. Sie wird jedesmal bei Dokumentstart gefüllt.

    Aber auch wenn dieses Modul vorhanden ist, kann es während des Testens zu einem Laufzeitfehler 13 kommen, und zwar dann, wenn das ContentControlOnExit-Makro mal abschmiert. In dem Fall dieses Makro Ausführen > zurücksetzen und das Document_New-Makro noch einmal starten um den Dokumentstart zu simulieren. Dann wird die Variable "kundendaten" wieder neu gefüllt.

    Anbei das Dokument mit den Makros.
     
    Gerhard H, 2. Dezember 2014
    #13
  14. Hallo Gerhard!

    Danke!

    Langsam zweifle ich an mir *entsetzt

    Offenbar bin ich zu dämlich, das Dokument einfach fix und fertig zu speichern.
    Daher fehlt auch das Makro!

    Meine Vorgehensweise:

    Ich öffne dein Form4.dotm kopiere die Zeile mit den Betreff, Dropdownlisten, Kl.Nr. und so einfach in diese "FormularGruppe".

    Passe den Link zur Excel-Datei an und es funktioniert einwandfrei!

    Aber wenn ich diese fertige Vorlage (mir fällt ja leider erst nach und nach ein was ich brauche, es muss auch mit einer Archivierungssoftware zusammenspielen) speichern will (als Word Vorlage mit Makros .dotm) dann fehlt danach das Makro und es funktioniert klarerweise nicht mehr.

    Ist ein Makro nicht Teil des Dokuments, so dass ich mit dem Dokument machen kann was ich will? Ist das irgendwie als Zusatzdokument zu sehen oder so?
    Speichern, kopieren, ....? An andere User per Mail verschicken (die auch Zugriff auf den Pfad der Exceldatei haben) usw.?

    Ich glaube ich habe da einfach gravierende Verständnisprobleme mit Makros *frown.gif*

    Im Anhang habe ich noch einmal das, wie ich hoffe, wirklich fertige Dokument.

    Ich verstehe einfach nicht, wieso ich das nicht als Vorlage speichern kann und es passt *frown.gif*
    Eventuell verstehe ich auch "Vorlagen" nicht!

    Mein Ziel ist eigentlich, dieses Formular, dann per Gruppenrichtlinie jedem User in einen Ordner am Desktop zu kopieren, es greift über den Pfad auf die Excelliste auf dem Netzlaufwerk zu und alles läuft.

    Sorry, dass ich dich damit so belästige, bist mir aber wirklich eine große Hilfe! Danke!

    Lg
    Fckw
     
  15. Gerhard H
    Gerhard H Erfahrener User
    Hallo Fckw,

    machs doch einfach so:

    Nimm alle Änderungen, die du machen willst, in dem Dokument vor, das die Makros enthält.

    Wenn du fertig bist, speichere es (aber nicht unter einem anderen Namen).
    Umbenennen kannst du es jederzeit per Rechtsklick auf den Dateinamen im Ordner. Und dann verschiebst / kopierst / verteilst du es, wohin du willst.
     
    Gerhard H, 3. Dezember 2014
    #15
Thema:

Dropdown-Formularfeld mit externer Liste füllen?

Die Seite wird geladen...
  1. Dropdown-Formularfeld mit externer Liste füllen? - Similar Threads - Dropdown Formularfeld externer

  2. Umsatzsteuer mit Dropdown berechnen - Rechnung

    in Microsoft Word Hilfe
    Umsatzsteuer mit Dropdown berechnen - Rechnung: Hallo zusammen, für eine Rechnung soll im Dropdown die Umsatzsteuer von 0%, 7% oder 19% ausgewählt werden und dann berechnet werden. Wie bekomme ich das am besten hin? Datei anbei. Danke und Grüße...
  3. Feld in Abhängigkeit eines Dropdowns

    in Microsoft Word Hilfe
    Feld in Abhängigkeit eines Dropdowns: Hallo, ich benötige in Word ein Dropdown und ein weiteres Feld, das sich abhängig vom ausgewählten Wert des Dropdowns befüllt. Beispiel: Die Werte des Dropdowns sind "Feuerwehr", "Sonne", "Gras"...
  4. DropDown Auswahl mit 2 Funktionen

    in Microsoft Excel Hilfe
    DropDown Auswahl mit 2 Funktionen: Liebes Forum-Team, ich habe eine Tabelle mit Kundendaten, die von mehreren Mitarbeitern befüllt wird. Ich möchte, dass der Mitarbeiter seinen Namen im DropDown Auswahl auswählt, Aber im...
  5. DropDown öffnen bei anwählen (.Select) einer Zelle

    in Microsoft Excel Hilfe
    DropDown öffnen bei anwählen (.Select) einer Zelle: Hallo und guten Abend, ich suche nach einem unter Office 365 funktionierenden VBA-Code, um ein DropDown-Menü direkt zu öffnen, wenn man die betreffenden Zelle anwählt, OHNE das NUMLOCK jedes mal...
  6. Word 2016 Duplizieren von Dropdown inhalten

    in Microsoft Word Hilfe
    Word 2016 Duplizieren von Dropdown inhalten: Guten Tag zusammen, ich grüble seit Tagen darüber wie ich einen Dropdown Inhalt an verschiedenen Stellen wiederholen kann wenn ich ihn nur einmal auswähle. Ich möchte den Inhalt des Dropdown...
  7. Werte aus DropDown-Formularfeldern multiplizieren

    in Microsoft Word Hilfe
    Werte aus DropDown-Formularfeldern multiplizieren: Hallo! Ich möchte in einer Tabellenzeile zwei Werte, die jeweils in einem Textfeld und einem DropDown-Feld stehen, miteinander multiplizieren, (1,2 oder 3 Objekte, die entweder 9€, 75€ oder...
  8. word, dropdown formularfelder

    in Microsoft Word Hilfe
    word, dropdown formularfelder: tag und hallo ich hätte da eine frage? also ich möchte in ein dropdown formularfeld mehere möglichkeiten einfügen aber das sind einige und ich möchte sie nicht immer einzeln einfügen. kann man...
  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