Office: (Office 2016) MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle

Helfe beim Thema MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo Gerhard, vielen Dank! Das Makro wird aktuell scheinbar noch an der Ausführung gehindert: [ATTACH] somit muss ich wohl doch einen Weg zu der... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von *xdc*, 19. Juli 2024.

  1. *xdc* Neuer User

    MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle


    Hallo Gerhard,
    vielen Dank! Das Makro wird aktuell scheinbar noch an der Ausführung gehindert:
    MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle upload_2024-7-25_8-34-28.png
    somit muss ich wohl doch einen Weg zu der Normal.dotm finden.

    Zumindest ist es momentan so, dass es völlig egal ist, was ich in das obere Rich-Text-Steuerelement für eine Zahl eingebe, die Ziffern in der Tabelle werden davon beim öffnen des Dokuments nicht überschrieben
     
    Zuletzt bearbeitet: 25. Juli 2024
  2. Gerhard H Erfahrener User
    Das sieht mir mehr wie eine Sicherheitseinstellung eurer IT aus, welche Makros blockiert, außer den signierten. Ich würde das Makro zunächst einmal auf einem privaten Rechner ausprobieren und wenn es tut was es soll mit der IT reden. Damit es tut was es soll solltest du es in einen sogenannten vertrauenswürdigen Speicherort stecken. Den findest du oder stellst du ein in den Optionen / Sicherheitscenter
     
    Gerhard H, 25. Juli 2024
    #17
  3. *xdc* Neuer User
    Hallo Gerhard, ich war einige Tage ohne Rechner unterwegs, daher kann ich jetzt erst wieder weiter probieren. Meine aktuelle Testumgebung ist ein privates Word 2024. Makros sind freigegeben, Zugriff auf VBA Modul aktiviert und der Speicherort der Testdatei ist als vertrauenswürdig eingetragen. Das Seriendruckfeld habe ich raus genommen und von Hand eine Zahl in das Rich-Text-Steuerelement eingetragen und das Dokument gespeichert. Muss die Ausführung des Makros irgendwo angestoßen werden? Aktuell wird die Zahl zumindest nicht in die Zellen übertragen/aufgeteilt.
     
  4. Gerhard H Erfahrener User

    MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle

    So wie es derzeit ist, muss das Makro manuell angestoßen werden: Registerkarte Entwicklertools > Makros, und dort "KennzahlSplitten" aus der Liste auswählen und ausführen. Oder direkt aus dem VBA-Editor heraus.

    Um zu sehen, ob das Makro überhaupt anspringt, kannst du ja als erstes gleich nach der Variablendeklaration eine Messagebox eintragen, z.B.:
    MsgBox "Los gehts"

    Für deine Original-Aufgabenstellung kann man sich überlegen, ob man das Makro automatisch beim Öffnen des Dokuments ausführen lässt oder beim Reinklicken in das Steuerelement mit der Tabelle (Tag: "einzeln"). Das hängt davon ab, wie du das Dokument aus deinem Fachprogramm raus erhältst.
     
    Gerhard H, 31. Juli 2024
    #19
  5. *xdc* Neuer User
    super! Manueller Start klappt einwandfrei. Eine automatische Ausführung beim öffnen des Dokuments wäre jetzt noch ein Schritt, der die Verwendung des Makros für meine Kolleginnen erheblich vereinfachen würde. Die MsgBox erscheint ja (momentan) auch erst, nachdem das Makro manuell gestartet wurde.
     
  6. *xdc* Neuer User
    wenn ein "in die Tabelle klicken" leichter zu realisieren ist, wäre das natürlich auch in Ordnung. Bei der automatischen Variante müsste vermutlich noch eine Verzögerung hinein, damit das Serienbrief Steuerelement vorher noch die Daten bekommen kann.
     
  7. Gerhard H Erfahrener User
    Also, die Variante mit dem automatischen Öffnen mit Verzögerung ist mir zu heikel. Da müsste ich schon den genauen Ablauf der Behandlung durch das Fachprogramm kennen.

    Sicherer wäre das Auslösen durch Klick in das Steuerelement mit der Tabelle, nachdem das Fachprogramm das Dokument ausgespuckt hat. Dazu müsstest du das Makro ein wenig modifizieren:
    Code:
    Private Sub Document_ContentControlOnEnter(ByVal CC As ContentControl)
    Dim kennzahl As String, laenge As Long, i As Long
    Dim ziffer As String
    Dim tabelle As Table
    
    ' nur auf das Steuerelement mit dem Tag "einzeln" reagieren:
    If CC.Tag <> "einzeln" Then Exit Sub
    
        'einlesen:
        kennzahl = ActiveDocument.SelectContentControlsByTag("gesamt").Item(1).Range.Text
        laenge = Len(kennzahl)
       
        'splitten und eintragen:
        Set tabelle = CC.Range.Tables(1)
         
        For i = 1 To laenge
            ziffer = Mid(kennzahl, i, 1)
            tabelle.Cell(1, i).Range = ziffer
        Next i
       
    End Sub
    Es gibt übrigens einen Schönheitsfehler: Eigentlich wollte ich beide Inhaltssteuerelemente gegen versehentliches Löschen schützen. Das führt im Fall des Steuerelements mit der Tabelle zu dem Laufzeitfehler: "Sie sind nicht berechtigt, diese Auswahl zu bearbeiten, weil sie geschützt ist". Das ist mir unverständlich, weil ich ja nicht das Bearbeiten verhindert habe aber ich nehm an, dass es was mit den Eigenarten von Word-Tabellen zu tun hat. Vielleicht kannst du nochmal erläutern, wie die Tabelle letztlich aussehen soll (ich hab im Kopf: ohne Rahmen) und vor allem: welchen Zweck sie überhaupt erfüllen soll. Vielleicht ergeben sich dann Alternativen.

    Das "Gesamt"-Steuerelement kann ich schützen; ich hab aber nicht ausprobiert, wie es sich verhält, wenn ein Seriendruckfeld drin ist und bestückt wird.
     
    Gerhard H, 31. Juli 2024
    #22
  8. *xdc* Neuer User

    MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle

    perfekt! herzlichen Dank! wenn jetzt jemand das Dokument öffnet und (wie bisher) manuell die Zellen füllen möchte, werden die Zellen direkt aufgefüllt. Jetzt muss ich es nur noch mit dem Fachprogramm koppeln.
    Die Zieltabelle ist vom Grundaufbau im betroffenen Bereich identisch zu der Vorlage in der Musterdatei. Ich melde mich auf jeden Fall nochmal, wenn die finale Integration geklappt hat :-) Ein besonderer Schutz der Steuerelemente ist hier von meiner Seite her nicht notwendig, da an die Vorlagendatei kaum einer hin kommt. Die Datei wird immer nur kurz mit Bezug zum jeweiligen Datensatz aus dem Fachprogramm aufgerufen, ausgedruckt und postalisch verschickt.
     
  9. *xdc* Neuer User
    muss am Makro etwas geändert werden, wenn es statt in der individuellen Vorlage in der normal.dotm abgelegt werden soll?
     
  10. Gerhard H Erfahrener User
    das sollte ohne Änderungen funktionieren, wenn der Code im Modul ThisDocument der normal.dotm untergebracht ist (und natürlich das Dokument mit den Steuerelementen das aktive Dokument ist). Gibts ein Problem damit?
     
    Gerhard H, 1. August 2024
    #25
  11. *xdc* Neuer User
    Danke, in der privaten Testumgebung funktionieren jetzt mittlerweile beide Varianten ohne Probleme. An der Umsetzung in der Zielumgebung arbeite ich noch.
     
Thema:

MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle

Die Seite wird geladen...
  1. MERGEFIELD Ausgabe einer Zahl in unterteilte Tabelle - Similar Threads - MERGEFIELD Ausgabe Zahl

  2. Serienbrief Mergiefeld Datum verdreht

    in Microsoft Excel Hilfe
    Serienbrief Mergiefeld Datum verdreht: Hallo Meine Aufgabe, aus einer Excel einen Serienbrief mit Geburtsdaten zu erstellen, ging in die Hose. Die Geburtsdaten waren mit zB. "12.3.2007" und die Ausgabe bei { MERGEFIELD «Geb»\@»d. MMMM...
  3. Uhrzeit ohne NULL aus Datenbank ausgeben

    in Microsoft Word Hilfe
    Uhrzeit ohne NULL aus Datenbank ausgeben: Mein erster Beitrag (Thema), bitte um Nachsicht falls ich etwas falsch mache. Folgende Frage: wir übernehmen aus einer Datenbank Uhrzeiten. Ausgabe IST: z.B. 09.15, 08.00, 17.00 etc... Ausgabe...
  4. Update Fields Problem mit MergeBarcode

    in Microsoft Word Hilfe
    Update Fields Problem mit MergeBarcode: Hallo zusammen, ich hoffe ihr könnt mir bei meinem Problemchen weiterhelfen. Die Googlesuche war nicht sehr hilfreich bisher. Und zwar verwenden wir in unserer Mailing Maschine die Mergefields...
  5. Mehrzeilige Firmierung Serienbrief

    in Microsoft Word Hilfe
    Mehrzeilige Firmierung Serienbrief: Guten Morgen, ich habe leider Probleme die Merzeilige Firmierung im Adressfeld eines Serienbriefes einzusetzen, ich hoffe dass einer von euch mir helfen kann. Vielen Dank im Voraus dafür. Die...
  6. Mergefield Zahl ohne Dezimalstellen ausdrücken

    in Microsoft Word Hilfe
    Mergefield Zahl ohne Dezimalstellen ausdrücken: Hallo, kann mir jmd. erklären, wie ich bei der Serienbrieffunktion in Word den von Excel einzufügenden Datensatz - wenn es eine Zahl ist - so in Word einstelle, dass eine ganze Zahl und nicht...
  7. Mergefield mit mehreren Datensätzen

    in Microsoft Word Hilfe
    Mergefield mit mehreren Datensätzen: Die Daten werden von einer Kalkulationssoftware (Access basierend) importiert. Das Mergefield im Word sieht wie folgt aus: { MERGEFIELD "Anzahl" } Die Ausgabe ist z.B.: 4 1 Der Wert...
  8. Serienbrief - Dynamische Tabelle anhand von Mergefield verändern - Word 2010

    in Microsoft Word Hilfe
    Serienbrief - Dynamische Tabelle anhand von Mergefield verändern - Word 2010: Servus, ich steh vor einem großen Problem und hoffe, dass mir hier jemand helfen kann. Background Story: Ich habe einen Serienbrief in Word erstellt anhand von Daten aus einem...
  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