Excel Daten in Word Datei

Sunnysunny81

Lt. Junior Grade
Registriert
Nov. 2015
Beiträge
266
Hi Leute,
ich habe eine Tabelle mit 2 Spalten.
Spalte A der Name und Spalte B jeweils das Alter.

Ich möchte gerne den Namen und das Alter in eine Word ziehen und jeweils durch ein Komma getrennt haben.

Wie kann ich das realisieren?

Danke!!!
 
Wie soll die Darstellung in Word sein ? Auch in Tabellenform ? Oder nur als ASCII ? und wenn nur ASCII, wie soll dann die Anordnung sein ? Und überhaupt, soll das eine einmalige Transaktion sein oder soll diese Übertragung automatisiert stattfinden ?
 
Kurz: wenn du das Format des zu Ziehenden ändern willst musst du VBA einschalten.

Gemacht habe ich das noch nicht, das Schema ist aber dieses:
1. Zielposition in Word angebe (Cursor platzieren)
2. in Excel die Quelle erkenntlich machen
3. Makro auslösen…
3.1. Zellen lesen und daraus das konstruieren was nach Word soll (»String-Akrobatik«)
3.2. Word fernsteuern den String an die Cursorposition zu schreiben
4. Fertig

Oder:
1. Excel wie oben bis String für Word konstruiert mist
2. String in Zwischenablage (XL-Makro Ende)
3. Word, Zielen, Makro in Word auslösen das einklebt - oder schnöde Strg+V.

CN8
 
Na ja, die Frage ist doch, willst Du einfach einen bestimmten Ausschnitt Deiner Excel-Datei grafisch als Tabelle auf einer Wordseite (also quasi eine Kopie der Exceltabelle ggfls. mit Zellbezügren)sehen, oder soll der Inhalt der Zellen aus Excel auf der Wordseite als einfacher Text bzw. als Zahlen wiedergegeben werden ?

Du selbst sprachst doch von einer Änderung, indem Du eine Abtrennung durch Kommata erwähntest !?
 
de la Cruz schrieb:
Na ja, die Frage ist doch, willst Du einfach einen bestimmten Ausschnitt Deiner Excel-Datei grafisch als Tabelle auf einer Wordseite (also quasi eine Kopie der Exceltabelle ggfls. mit Zellbezügren)sehen, oder soll der Inhalt der Zellen aus Excel auf der Wordseite als einfacher Text bzw. als Zahlen wiedergegeben werden ?

Du selbst sprachst doch von einer Änderung, indem Du eine Abtrennung durch Kommata erwähntest !?

Hi,
ich möchte eben nicht eine Tabelle in word. Ich möchte den Inhalt der Zellen in einer Reihe aufgeschrieben und zwar jeweils A1 B1, A2 B2, usw...
Ergänzung ()

Welches Makro? Also ich verstehe leider nur Bahnhof. :(
Kannst Du es auch für dummies erklären?
 
Sunnysunny,

Um wieviele Zeilen handelt es sich denn in Excel und soll die Übertragung nach Word auf Knopfdruck erfolgen?

Man kann Excel anweisen jedes Mal ein neues Word-Dokument zu erstellen und dort die Daten reinschreiben lassen.

Ich gehe mal davon aus, dass du am Ende auch wieder zwei spalten haben möchtest, wie in einem CSV File. Falls CSV dein Ziel ist, bist du mit Word eh an der falschen Adresse ;-)

Gib uns doch einfach mal einen Überblick über das, was du eigentlich vorhast.
 
Janush schrieb:
Ich gehe mal davon aus, dass Du am Ende auch wieder zwei Spalten haben möchtest, wie in einem CSV File.


Nein, will er eben nicht, hat er oben doch schon geschrieben ! Er will alle Werte A1, B1, A2, B2, ... usw. in eine Zeile von Word !

Der TE müsste allerdings jetzt noch genauer sagen, um was für ein Word-Dokument es sich dabei handeln soll, also ob es beispielsweise die erste Zeile in einem neuen Dokument sein soll, oder aber ob er die neue Zeile mit den zu übertragenden Werten in ein vorhandenes Dokument immer an einer bestimmten Stelle oder an unterschiedlichen Positionen einfügen möchte.

Ohne dass der TE das niucht genauer erklärt, kann man auch konkret nix sagen !
 
Zuletzt bearbeitet:
de la Cruz schrieb:
Nein, will er eben nicht, hat er oben doch schon geschrieben ! Er will alle Werte A1, B1, A2, B2, ... usw. in eine Zeile von Word !

Stimmt, da habe ich wohl den wichtigsten Punkt überlesen 😬
 
de la Cruz schrieb:
Nein, will er eben nicht, hat er oben doch schon geschrieben ! Er will alle Werte A1, B1, A2, B2, ... usw. in eine Zeile von Word !

Der TE müsste allerdings jetzt noch genauer sagen, um was für ein Word-Dokument es sich dabei handeln soll, also ob es beispielsweise die erste Zeile in einem neuen Dokument sein soll, oder aber ob er die neue Zeile mit den zu übertragenden Werten in ein vorhandenes Dokument immer an einer bestimmten Stelle oder an unterschiedlichen Positionen einfügen möchte.

Ohne dass der TE das niucht genauer erklärt, kann man auch konkret nix sagen !

Darf gerne in ein neues Dokument einfach direkt am Anfang sein.
Vielen Dank!
Ergänzung ()

Janush schrieb:
Sunnysunny,

Um wieviele Zeilen handelt es sich denn in Excel und soll die Übertragung nach Word auf Knopfdruck erfolgen?

Man kann Excel anweisen jedes Mal ein neues Word-Dokument zu erstellen und dort die Daten reinschreiben lassen.

Ich gehe mal davon aus, dass du am Ende auch wieder zwei spalten haben möchtest, wie in einem CSV File. Falls CSV dein Ziel ist, bist du mit Word eh an der falschen Adresse ;-)

Gib uns doch einfach mal einen Überblick über das, was du eigentlich vorhast.

Es handelt sich um ca. 30 Zellen in Excel und 2 Spalten.
In der ersten steht der Name und in der 2. Spalte das Alter.. Würde aber gerne noch jeweils ein J nach dem Alter haben. Kann man das auch realisieren?

Danke!
 
Du kannst mit der Funktion < =TEXT(E3;"#") > die Zahl mit dem Alter in einer Zelle in einen Text verwandeln.

Am besten legts Du Dir auf dem Excel-Blatt dafür eine neue Spalte an. Dann kannst Du die Texte in den jeweiligen Spalten nach Deinem Gusto in einer Textzelle in Excel zusammenführen und diese Textzelle dann als erste Zeile in ein neues Word-Blatt einfügen.
 
Zuletzt bearbeitet:
Mit VBA kann das ja jetzt nicht so schwer sein :-)

Ich würde den String zuerst komplett in Excel erzeugen, einfach durch alle Zeilen durch loopen und diesen dann an Word übergeben.

Benutzt du Windows oder nen Mac?

Ich schau später mal ob ich was zusammenbasteln kann ;)
 
de la Cruz schrieb:
Du kannst mit der Funktion < =TEXT(E3;"#") > die Zahl mit dem Alter in einer Zelle in einen Text verwandeln.

Am besten legts Du Dir auf dem Excel-Blatt dafür eine neue Spalte an. Dann kannst Du die Texte in den jeweiligen Spalten nach Deinem Gusto in einer Textzelle in Excel zusammenführen und diese textzelle dann als erste Zeile in ein neues Word-Blatt einfügen.

Vielleicht habe ich mich falsch ausgedrückt.
Ich habe in der Spalte A jeweils den Namen der Person und in Spalte B das Alter in Nummerischer Form also bspw 34.

Nun möchte ich in ein Word Dokument folgende Form.

Max: 34 J, Anton: 12 J, Siegfried: 34 J, usw.

Danke!
 
Makros aus der Hosentasche heraus zu erklären ist schier unmöglich.

Was dein Beispiel angeht - ich würde es händisch in Angriff nehmen. Zwischenbemerkung: wir müssten für das 2. von mir angegebene Konzept wissen was das alles zu verkuppeln wäre.

Nun aber zu meiner Lösungsidee.
1. Kopiere den ganzen Block aus Excel.
2. Klebe ihn in Word ein - aber ohne Formatierung!

3. Max: 34 J, → [Name] - Doppelpunkt - Leerzeichen - [Alter] - Leerzeichen - Buchstabe J (groß) - Komma - Leerzeichen…
Was du eingekelbt bekommst sieht so aus (Wenn du mit dem ¶-Symbol mal die Sonderzeichen Sichtbar machst.
Max → 34¶
Anton → 12¶
Siegfried → 34¶

4. alles Eingeklebte markieren.
4A. Suchen/Ersetzen «^t» (Caret, kleines t ≡ Tabulator) durch «: » (Doppelpunkt, Leerzeichen) - nur in der Markierung, nicht dokumentweit
4B. Suchen/Ersetzen «^p» (p wie ‹Paragraph› = Absatz) dirch « J, » (Leerzeichen, J, Komma, Leerzeichen)
5. Hinten dürfte nun wieder eine Absatzschaltung ¶ nötig sein.

Das sieht wild aus, ist aber shneller als man denkt.

Für Excel gäbe es mehrere Ansätze. Hier Trickse ich da es bequem nur 2 Spalten sind. Weiderum in Excel alles markieren [man muss ja wissen was zu verarbeiten ist ← hatte ich oben ja erwähnt]:
Code:
Sub Täscht()
Dim I As Integer
Dim Zeile As String
Dim Z As Range
 Zeile = ""
 I = 0
 For Each Z In Selection
  I = I + 1
  If I Mod 2 <> 0 Then
   Zeile = Zeile & Z & ": "
  Else
   Zeile = Zeile & Z & " J, "
  End If
 Next
 Debug.Print Zeile
 Set Ablage = New dataobject
 Ablage.GetFromClipboard
 Ablage.SetText Inhalt
 Ablage.PutInClipboard
End Sub
I ist durch einfach Hochzählen mal gerade und mal ungerade - das erfasse ich mit Mod. Die Zellen in der Markierung werden Zeilenweise abgelaufen. Je nach dem wir entsprechend die Zeile zusammenaddiert. Im lertzen teil landet alles in der Zwischenablage (als unformatierter Klartext) der nun in Word eingeklebt werden kann.
Wie gesagt diese Makro ist ein wenig… gebastelt…

CN8
 
cumulonimbus8 schrieb:
Makros aus der Hosentasche heraus zu erklären ist schier unmöglich.

Was dein Beispiel angeht - ich würde es händisch in Angriff nehmen. Zwischenbemerkung: wir müssten für das 2. von mir angegebene Konzept wissen was das alles zu verkuppeln wäre.

Nun aber zu meiner Lösungsidee.
1. Kopiere den ganzen Block aus Excel.
2. Klebe ihn in Word ein - aber ohne Formatierung!

3. Max: 34 J, → [Name] - Doppelpunkt - Leerzeichen - [Alter] - Leerzeichen - Buchstabe J (groß) - Komma - Leerzeichen…
Was du eingekelbt bekommst sieht so aus (Wenn du mit dem ¶-Symbol mal die Sonderzeichen Sichtbar machst.
Max → 34¶
Anton → 12¶
Siegfried → 34¶

4. alles Eingeklebte markieren.
4A. Suchen/Ersetzen «^t» (Caret, kleines t ≡ Tabulator) durch «: » (Doppelpunkt, Leerzeichen) - nur in der Markierung, nicht dokumentweit
4B. Suchen/Ersetzen «^p» (p wie ‹Paragraph› = Absatz) dirch « J, » (Leerzeichen, J, Komma, Leerzeichen)
5. Hinten dürfte nun wieder eine Absatzschaltung ¶ nötig sein.

Das sieht wild aus, ist aber shneller als man denkt.

Für Excel gäbe es mehrere Ansätze. Hier Trickse ich da es bequem nur 2 Spalten sind. Weiderum in Excel alles markieren [man muss ja wissen was zu verarbeiten ist ← hatte ich oben ja erwähnt]:
Code:
Sub Täscht()
Dim I As Integer
Dim Zeile As String
Dim Z As Range
 Zeile = ""
 I = 0
 For Each Z In Selection
  I = I + 1
  If I Mod 2 <> 0 Then
   Zeile = Zeile & Z & ": "
  Else
   Zeile = Zeile & Z & " J, "
  End If
 Next
 Debug.Print Zeile
 Set Ablage = New dataobject
 Ablage.GetFromClipboard
 Ablage.SetText Inhalt
 Ablage.PutInClipboard
End Sub
I ist durch einfach Hochzählen mal gerade und mal ungerade - das erfasse ich mit Mod. Die Zellen in der Markierung werden Zeilenweise abgelaufen. Je nach dem wir entsprechend die Zeile zusammenaddiert. Im lertzen teil landet alles in der Zwischenablage (als unformatierter Klartext) der nun in Word eingeklebt werden kann.
Wie gesagt diese Makro ist ein wenig… gebastelt…

CN8


Bin ich zu doof, oder ist das was Du geschrieben hast einfach zu kompliziert?
:(
 
Probiere es Schritt für Schritt aus. :)

Aus Berufserfahrung weise ich noch mal darauf hin, dass du nirgends angibst wo ein Makro die Quelldaten hernehmen soll. Nach der Einleitung willst du ja beliebige Datengruppen nach Word schaffen, also muss das Makro mit dieser Beliebigkeit (Auswahl, Selection) umgehen können.

Die reine handwerkliche Lösung taugt natürlich nur wenn du das nicht sehr oft machen willst. Dann kann nur ein Makro helfen, ausgelöst durch einen Shortcut oder es ist per Klick erreichbar.

Je öfter desto komplexer, aber auch desto engere Regeln an die sich ein Nutzer halten muss. Es wäre an dir uns hier noch ein paar Infos zu geben.

CN8
 
Zurück
Oben