Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1944to1948
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel zur generierung eines Worddokumentes benutzen

Excel zur generierung eines Worddokumentes benutzen
13.09.2023 10:12:38
Hesperaxius
Hallo Zusammen, ich habe da eine echt kniffelige Aufgabe.
Ich habe eine CSV Datei, in der Werte gesetzt werden True/False.
Nun möchte ich auf Basis dieser Werte bestimmte Texte in einem Worddukument erscheinen oder eben nicht.
Beispiel:
A1=True
B1=False
C1=True usw.

Diese Felder entsprechen eine Passage in einem Worddokument.
Nach der Logik soll jetzt Textpassage 1 erscheinen, 2 nicht und 3 dann wieder. Alles untereinander.

Hat jemand eine Idee?

Lieben Dank schonmal, für eventuelle Lösungsansätze
Hesperaxius

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 10:31:08
snb
Verwende field { IF }
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 10:52:36
Ulf
Hi,
Deine Angaben sind nicht ausreichend:
Wo stammen die Textpassagen her ?
{IF } ist ein Wenn-Feld in Word, wenn du aber Bedingungen und/oder Passagen aus Excel in Word abbilden willst/musst braucht es das nicht.
Datei(en) mit Bedingungsbereich und korresponierenden Textpassagen (Dummies ggf) uploaden.
hth
Ulf
Excel zur generierung eines Worddokumentes benutzen
13.09.2023 14:45:15
Ulf
Soll also ein Katalog o.ä. nach Bestellung entstehen
Hier eine Demo:
beide Dateien im selben Verzeichnis entpacken,
https://www.herber.de/bbs/user/162823.zip

HowTo:
dein fertiges Dokument mit Passagen einmalig in eine (nicht sichtbare) Tabelle stecken, wie in der Bsp-Datei zu sehen. Tabelle anlegen und per Drag & Drop Passagen reinschieben.
Alternativ mit Makro erledigen. Formate usw bleiben erhalten.
Danach wie im Makro in Tabelle1


Option Explicit

Public myWord As Word.Application
Public myDoc As Word.Document
Public myWordTable As Word.Table

Public strDoc As String

Public myRg As Excel.Range

Public Sub durchlaufe()
strDoc = ThisWorkbook.Path & "\TabelleMitTexten.docx"
Set myRg = ThisWorkbook.Worksheets(1).Range("A2:A12")
Set myWord = New Word.Application
Set myDoc = myWord.Documents.Add(strDoc)
Set myWordTable = myDoc.Tables(1)
Dim lngZähler As Long
For lngZähler = myRg.Rows.Count To 1 Step -1
If myRg.Cells(lngZähler).Value Then
'Passage bleibt
Else
'Passage entfernen
myWordTable.Rows(lngZähler).Delete
End If
Next lngZähler
myWord.Visible = True
myWord.Activate
'ggf DokumentSpeichern usw
End Sub

hth
Ulf
Anzeige
Excel zur generierung eines Worddokumentes benutzen
13.09.2023 15:21:49
Hesperaxius
Vielen dank erstmal.
Ich werde es mal testen, was am besten geht.

VG Hesperaxius
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 11:01:27
Jan
Hallo

CSV-Dateien liest man mit PQ ein und bearbeitet sie nach Wunsch, dies nur als Tipp.
Excel zur generierung eines Worddokumentes benutzen
13.09.2023 14:34:56
Yal
Hallo Hesper,

schaue dir https://www.phraseexpress.com/de/

Was sich dabei nicht ganz erschliessen lässt, ist warum die Parameter in einer csv gespeichert sind.
Wenn es daraus ein Vielzahl an Dokument entstehen sollten, müsste man mit der Serienbrief-Funktion von Word zu arbeiten:
Jede Kapitel wäre als Feld, der mit true/false gesteuert wäre, also angezeigt oder nicht. Man könnte den Kapitelüberschrift auch erscheinen lassen:

4.2.1 Überspannung

(trifft bei diesem Artikel nicht zu)


VG
Yal
Anzeige
Excel zur generierung eines Worddokumentes benutzen
13.09.2023 18:52:04
snb
Stimmt gar nicht:

{if {Docvariable choice}="Y" {Docvariable hier} {Docvariable dort} }
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 12:01:05
Hesperaxius
Hi Ulf,
Ich habe 2 Teile, erstens natürlich die Excelauswertung und zum zweiten ein Worddokument, das aus ca. 100 Passagen auf ca. 120 Seiten besteht.
Nun sollen auf der Basis der Excelauswertung ein Teil der Passagen angezeigt werden oder eben nicht.
Ich kann die Texte in Excel hinterlegen um sie je nach Auswertung nach Word zu schieben. Dann muss ich aber im Nachgang evtl. alles in Word wieder Formatieren.
Am besten wäre es, wenn man die Auswertung mit Word so verbinden könnte, dass die Texte eben automatisch ein oder ausgeblendet werden.
Ich hoffe, das macht es etwas klarer, was ich machen will.

LG Hesperaxius
Anzeige
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 13:21:24
JoWE
Hallo,
das Vorhaben ließe sich über Textbausteine in Word lösen.
es würden Textbausteine txtP1 bis txtP120 oder noch viel mehr) anzulegen sein.
Hinweis: Textbausteine können inklusive Formatierung übergeben und z.B. auch als eigene Absätze eingefügt werden
Das geht so:
-den Text für den entsprechend Textbaustein schreiben formatieren usw.
- Menü Einfügen, Schnellbausteine, AutoText, Auswahl im AutoText-Katalog speichern
- Name: txtP1
- Katalog: AutoText
- Kategorie: Allgemein
- Beschreibung: wahlfrei
- speichern in: Normal.dotm
- Optionen: Inhalt in eigenem Absatz einfügen 'wenn so gewünscht
Funktionalität so:
Ein Word-Makro durchläuft deine CSV-Daten und übergibt bei "true" den Namen des Textbausteins (also z.B. "txtP1") an die Funktion.
Das Makro könnte so aussehen:
Option Explicit

Sub test()
Dim tp As string
for sp = 1 to 120 'Schleife durchläuft die Spalten (Zellen der Zeile 1) lt. Deinem Beispiel
tp = cells(1,sp).value
if tp = true then
Call InsertAutoTextEntry(tp)
end if
End Sub

Function InsertAutoTextEntry(tp)
ActiveDocument.AttachedTemplate.AutoTextEntries(tp) _
.Insert Where:=Selection.Range, RichText:=True
End Function


Gruß
Jochen
Anzeige
AW: Excel zur generierung eines Worddokumentes benutzen
13.09.2023 10:36:29
Hesperaxius
Hallo SNB, sorry aber das verstehe ich nicht

143 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige