Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
936to940
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
936to940
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Export Excel > Word

Export Excel > Word
04.01.2008 15:17:29
Frau_Kuchen
Ich habe folgende Aufgabenstellung:
1) einige Excel-Dokumente mit Pivot-Daten und Diagrammen
2) Daten und Diagramme werden aktualisiert (von zentraler Exceldatei aus, die die einzelnen Mappen öffnet, bearbeitet und dann wieder schliesst)
2a) Pivotdaten werden ausgewertet und zu mehreren Tabellen zusammengestellt (vba)
2b) Diagramme werden mit den neuen Daten neu aufgebaut (vba)
3) Bestimmte Daten und Diagramme sollen in ein Worddokument exportiert werden
3a) Neues Worddokument wird erstellt, oder bestehendes geöffnet
3a1) bei -> bestehend müssen bestimmte Inhalte entfernt bzw. überschrieben werden
3b) textuelle Daten will ich fomatieren und Seiten strukturiert aufbauen
3c) an bestimmten Stellen sollen Diagramme eingefügt werden
Bisher:
Die Punkte 1 und 2 funktionieren wunderbar, ich kann mir zu aktuellen Daten jeweils neue Diagramme aufbauen lassen (Diagramme sind bei mir einzelne Tabellenblätter)
3a) funktioniert
3a1) bin ich etwas ratlos - ich will nicht jedesmal alle Inhalte einfach löschen, sondern nur an bestimmten Positionen, dafür benötige ich wohl so etwas wie Textmarken oder Paragraphen? Wie lege ich die an bestimmte Stellen und kann ich die mit bestimmten Formaten vorbelegen ?
3b) Leider habe ich von der VBA-Word Struktur nicht wirklich Ahnung, wie kann ich mir denn einen bestimmten Text als Überschrift anlegen und meinetwegen zwei Leerzeilen drunter freilassen und dann eine Textzeile mit Arial 14.
3c) Hier hatte ich bereits einmal Code gefunden, der funktioniert hat, allerdings finde ich das nicht mehr - mein Problem ist vielleicht auch, dass ich von Excel aus mit Word hantiere und mich bei Word bisher nicht so wirklich zurechtfinde...
Hier mal der Code mit den entsprechenden [Fragen]

Public Sub CommandButton2_Click()
Dim wb As Workbook
Dim ref As String
ref = "http://test/monatsbericht_1.xlsx"
Call my_alerts_off                                  'screen und alerts aus
Call my_get_workbook(wb, ref)             'öffnet arbeitsmappe
Call my_word_generation(wb)               '-> hier word dokument erstellen
Call my_just_close_workbook(wb)         'schliessen ohne speichern
Call my_alerts_on                                   'screen und alerts wieder an
End Sub



Public Sub my_word_generation(wb As Workbook)
' Variablendeklarationen
Dim objBlatt As ChartObject
Dim ArrayLength, counter As Integer
Dim n As Long
Dim WdApp As Object
Dim datum, firma, name_date_sheet, name_doc, testeintrag, verteiler_titel As String
Dim eintrag_01, Diagramme As Variant
Dim Blatt As Worksheet
' Definition der Variablen
name_doc = "http://test/test3.doc"
name_date_sheet = "Berechnungshilfen"
'zu Word wechseln oder neu öffnen
On Error Resume Next
Set WdApp = GetObject("", "Word.Application")
If WdApp Is Nothing Then Set WdApp = CreateObject("Word.Application")
[Aufruf habe ich aus Forum, allerdings öffnet er bei mir immer einen neuen Word Prozess
Das GetObject scheint nicht zu funktionieren - liegt vllt. an Office2007?]
'Dokument öffnen oder erzeugen
Set WdDok = WdApp.Documents.Open(name_doc)
If WdDok Is Nothing Then Set WdDok = WdApp.Documents.Add
' Dokumentinhalte definieren und vorbereiten
testeintrag = "Test, Test, Test"
datum = wb.Worksheets(name_date_sheet).Range("A1").Value 'holt Auswertungsdatum
firma = "test gmbh"
verteiler_titel = "Verteiler:  Verbleib / weiter an:"
verteiler_gruppen = Array("gruppe1", "gruppe2", "gruppe3", "Sonstige")
eintrag_01 = Array("Geheim!", firma, "MONATSBERICHT", datum, verteiler_title,  _
verteiler_gruppen(0), verteiler_gruppen(1), verteiler_gruppen(2), verteiler_gruppen(3))
[Test um Inhalte im Word Dokument einfach einzutragen:
Einzelne Array Elemente sollen formatiert werden und dazwischen z.B. Zeilenumbrüche rein
z.B.
Überschrift 1 -neue zeile
Arial 14 links
und dann zwischenrein ein Diagramm
ArrayLength = UBound(eintrag_01) - LBound(eintrag_01)
For counter = 0 To ArrayLength Step 1
i = counter + 1
WdDok.Content.InsertAfter Text:=eintrag_01(counter) 'Hängt Text unformatiert einfach hinten  _
an
Next counter
Diagramme = Array("Dia.1", "Dia.2", "Dia.3", "Dia.4")
[funktioniert nicht]
wb.Sheets(Diagramme(0)).Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.PlotArea.Select
ActiveChart.ChartArea.Copy
[einfügen Diagramm in Worddokument an Ende oder bestimmte Stelle]
WdDok.Selection.PasteSpecial Link:=False, Placement:=wdInLine, DisplayAsIcon:=False
WdDok.SaveAs (name_doc)
WdDok.Close True
Set WdDok = Nothing
WdApp.Quit
Set WdApp = Nothing
End Sub


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Export Excel > Word
04.01.2008 15:21:39
Jochen
Hi,
Anrede
Frage
Gruß
mfg Jochen

AW: Export Excel > Word
04.01.2008 15:29:00
Frau_Kuchen
Hi Jochen,
der Grußrahmen ging wohl im Laufe des Beitrags verloren... - Sorry dafür
Wenn ich das alles in einzelne Fragen aufteile, wird es nur noch umfangreicher und der Kontext geht verloren...
mfg Frau_Kuchen
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige