Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Name eines strings auslesen & dessen Wert ausgebe

Name eines strings auslesen & dessen Wert ausgebe
16.11.2018 12:03:26
Martin
Hallo liebe Excel-Experten,
ich habe eine Tabelle mit mehreren Tabellenblättern, die anhand von verschiedenen Textbausteinen und Variablen Verträge für unterschiedliche Kunden erzeugt. Ein Tabellenblatt enthält feste Textbausteine, ein anderes individuelle Angaben zu den Kunden.
Das Tabellenblatt der Kunden sieht so aus (die Punkte denkt Euch bitte weg, ich musste sie einfügen da die Leerzeichen automatisch entfernt werden):
name_kunde........Alfons.....Berta......Caesar
anschrift_kunde...xy-Str.1...xy-Str.2...xy-Str.3
....
Das Blatt mit den Textbausteinen enthält feste Textbausteine mit Angaben zur Formatierung und soll nach Bedarf angepasst werden können, d.h. man kann Zeilen hinzufügen oder Texte ändern. Diese werden dann in allen erzeugten Verträgen geändert.
In der ersten Spalte steht die Formatierung (Absatz, Fließtext oder Überschrift) und dahinter der Text. Nun die Herausforderung: wenn in den Fließtext der Name des Kunden eingetragen werden soll, möchte ich in die Spalte "Formatierung" den Namen des strings einsetzen ("name_kunde") und das Programm soll dann im Text den Wert dieses Strings ausgeben ("Alfons").
Das Textbaustein-Blatt sieht also so aus:
Formatierung....Text
fliesstext...........Der Vertrag zwischen der abc-GmbH und
name_kunde
fliesstext...........beinhaltet die Pflege von Bäumen und Sträuchern in
anschrift_kunde
fliesstext...........im Jahr 2019.
Ausgegeben werden soll als Fließtext "Der Vertrag zwischen der abc-GmbH und Alfons beinhaltet die Pflege von Bäumen und Sträuchern in der x-Str.1"
Wie kann ich Excel dazu bringen, den Wert des Strings auszugeben?
Meine Lösung ist wie folgt und führt nur dazu dass der Name und nicht der Wert des Strings ausgegeben wird. In dem Beispiel heißt die Variable "name_kunde" und deren Wert ist "Alfons"
Sub variable_ausgeben()
If formatierung  "fliesstext" Then
Worksheets("Vertrag").Cells(zeile, 1) = variable
End If
End Sub

Besten Dank vorab fürs Mitdenken!
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Name eines strings auslesen & dessen Wert ausgebe
16.11.2018 12:11:10
MCO
Hallo!
Kann es sein, dass du gerade dass WORD-Werkzeug "Serienbrief" versuchst in Excel nachzubauen?
Mach es in Word mit der Excel-Tabelle als Datenbank!
Ansonsten nach dem Muster
variable = cells(zeile, spalte)
variable2 = cells(zeile, spalte)
"Text1" & variable & " Text2 " & "variable2 & "Text3"
Gruß, MCO
Anzeige
AW: Name eines strings auslesen & dessen Wert ausgebe
16.11.2018 13:02:56
Martin
Es geht schon in Richtung Serienbrief, ist aber meiner Meinung nach zu komplex für Word. Es geht ja um verschiedene Vertragspartner und diverse individuelle Einstellungen bei jedem, außerdem muss an einigen Stellen noch gerechnet werden. Der vba-Code macht bisher auch schon alles ganz hervorragend, nur dieses string-Thema macht mir noch Kopfzerbrechen. Alternativ wäre es möglich alles einzeln abzufragen:
If formatierung ="name_kunde" then
Worksheets("Vertrag").Cells(zeile, 1)= Worksheets("Vertrag").Cells(zeile, 1) & name_kunde
...aber damit wäre die Möglichkeit genommen weitere Variablen in die Tabelle einzufügen und automatisch ergänzen zu lassen, ohne den Code weiter zu schreiben.
Anzeige
das geht nicht. owT
16.11.2018 12:15:58
Rudi
Da es sich ja um einen Serienbrief-Mechanismus ...
16.11.2018 14:24:19
Luc:-?
…handelt, Martin,
sollten die Variablen auch als wdFeldnamen (mit der in Word üblichen Kennung) in den Text eingefügt wdn. Dann macht das auch Word. Ich habe da schon Komplizierteres realisiert - nur in Word, ohne xlVBA (aber ggf zusätzlich wdVBA). Allerdings sind solch reine wdFeldnamen-Fmln etwas gewöhnungsbedürftig, weil sie an bestimmten Stellen Leerzeichen (innerhalb der oft verschachtelten Mar­kierungs-{}) enthalten müssen.
Gruß, Luc :-?
„Die Intelligenzmenge ist auf diesem Planeten eine Konstante, die Bevölkerung nimmt aber zu!“ Auch deshalb informieren mit …
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige