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

Tabelle nach Word exportieren

Tabelle nach Word exportieren
18.05.2003 15:23:04
Roger
Hallo zusammen

Ich komem nicht mehr weiter. Ich will ein ausgewähltes Tabellenblatt aus der ListBox nach Word exportieren damit ich es dort als Worddok speichern kann. Ich hab schon alles probiert komme aber nicht weiter. Weiss jemand wie das gehen soll?

BEsten Dank für eure Hilfe

Gruss Roger

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Tabelle nach Word exportieren
18.05.2003 15:30:53
Ramses

Hallo Roger,

ein Tabellenblatt kannst du nicht exyportieren.
Du kannst lediglich den Inhalt kopieren und in ein Worddokument entweder als Objekt oder als Text einfügen.

Gruss Rainer

Re: Tabelle nach Word exportieren
18.05.2003 15:34:31
Roger

Hallo Rainer

Sorry das ich mich falsch ausgedrückt habe. Ich meinte natürlich den Inhalt. Aber geht das überhaupt aus einer Listbox im Userform den Inhalt des angewählten Blattes zu übernehmen wenn ja wie macht man das? Bin leider noch kein Crack im Programmieren und bin über jede Hilfe dankbar.

Gruss Roger

Re: Tabelle nach Word exportieren
18.05.2003 15:54:06
Ramses

Hallo Roger,


bei aller Bescheidenheit, aber das erscheint mir als Forumsaufgabe etwas zu umfangreich.
Da musst du schon ein paar Vorarbeiten machen.

Hier ein Beispiel wie man in Word was einfügen kann.
Es sollte dir mal als Ansatz dienen:


Sub Word_Dokument_von_Excel_aus_steuern()
Dim myWord As Object
'Fehlerroutine für die Objectabfrage aktivieren
On Error Resume Next
'Abfragen einer besthenden WORD-Instanz um wiederholtes starten zu verhindern
'9 = Word 2000, 10 = Word XP
Set myWord = GetObject("Word.Application.10")
If Err.Number <> 0 Then
    'Fehlervariable leeren wenn Instanz noch nicht besteht
    Err.Clear
    'Zuweisung der Instanz
    Set myWord = CreateObject("Word.Application.10")
    'Instanz öffnen
    'Um das ganze etwas im Hintergrund laufen zu lassen
    'kann man den Status "wdWindowStateMinimize" verwenden
    myWord.Visible = True: objWW.WindowState = wdWindowStateMaximize
Else
    'Instanz besteht bereits
    myWord.Activate
    'Instanz in der Vordergrund bringen oder
    'mit "wdWindowStateMinimize" im Hintergrund ausführen
    myWord.Visible = True: objWW.WindowState = wdWindowStateMaximize
End If
'Hier muss der der Dateiname stehen der verwendet werden soll
'Es sollte aber eine Dokumentvorlage verwendet werden
'um keine Änderungen an den Textmarken beim einfügen zu verursachen
myWord.Application.Documents.Open "C:\Test.doc"
'Die Textmarken "a1, a2, a3" müssen im Dokument bereits bestehen
'Dann werden nach dem öffnen des Dokuments die Werte von Tabelle1
'A1, B1 und C1 in die jeweiligen Textmarken geschrieben
myWord.ActiveDocument.Bookmarks("a1").Range.Text = Worksheets("Tabelle1").Range("A1")
myWord.ActiveDocument.Bookmarks("a2").Range.Text = Worksheets("Tabelle1").Range("B1")
myWord.ActiveDocument.Bookmarks("a3").Range.Text = Worksheets("Tabelle1").Range("C1")
'Das aktive WordDokument drucken
myWord.ActiveDocument.PrintOut
'Dokument schliessen ohne speichern
myWord.ActiveDocument.Close savechanges:=False
'---
'Speichern mit fixem Namen
'myWord.ActiveDocument.SaveAs Filename:="DokumentName", FileFormat:=wdFormatDocument
'Speichern mit Variable
'myWord.ActiveDocument.SaveAs Filename:=Variable, FileFormat:=wdFormatDocument
'---
'WORD-Instanz schliessen
myWord.Application.Quit (True)
'Variable leeren
Set myWord = Nothing
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16

Gruss Rainer

Anzeige
Re: Tabelle nach Word exportieren
18.05.2003 16:04:04
Roger

Hallo Rainer

Vielen Dank für deine Hilfe das ist doch schon was damit kann ich nun experimentieren. Es war auch nicht so gemeint das mir jemand das ganze programiert. Ich möchte es ja selber lernen und mit deinem Code komme ich sihcer weiter. Besten Dank

Gruss Roger

Danke klappt wunderbar
18.05.2003 18:04:29
Roger

Hallo Rainer
Hab im Buch Excel vBA Programierung noch was gefunden und diesen Code abgeändert. Da ich nach deinem Code wusste nach was ich suchen musste hat es geklappt. Ich stelle den Coe hier rein vielleicht hat ja noch jemand anders Interesse daran.

Private Sub test_Click()
Dim WordObj As Object
Dim Bereich As Variant
Dim WordDoc As Object
Dim ExTab As Object
Dim i As Integer
Dim x As Integer
Dim y As Integer
Dim arrWks()
Dim iCounter As Integer, iCount As Integer
For iCounter = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(iCounter) Then
Worksheets(ListBox1.List(iCounter)).Activate
End If
Next iCounter
i = ActiveSheet.UsedRange.Rows.Count
Bereich = Range("A4:F" & i).Value
On Error Resume Next

Set WordObj = GetObject(, "word.application.9")
If Err.Number = 429 Then
Set WordObj = CreateObject("word.application.9")
Err.Number = 0
End If

WordObj.Visible = True
Set WordDoc = WordObj.Documents.Add
Set ExTab = WordDoc.Tables.Add _
(WordObj.Selection.Range, UBound(Bereich, 1), UBound(Bereich, 2))
With ExTab
For x = 1 To UBound(Bereich, 1)
For y = 1 To UBound(Bereich, 2)
.Cell(x, y).Range.InsertAfter Bereich(x, y)
Next y
Next x
End With
Set WordObj = Nothing
Set WordDoc = Nothing
Set ExTab = Nothing
Worksheets("Hilfsblatt").Activate

End Sub


Besten Dank nochmals
Gruss Roger

Anzeige
Danke klappt wunderbar
18.05.2003 18:06:17
Roger

Hallo Rainer
Hab im Buch Excel vBA Programierung noch was gefunden und diesen Code abgeändert. Da ich nach deinem Code wusste nach was ich suchen musste hat es geklappt. Ich stelle den Coe hier rein vielleicht hat ja noch jemand anders Interesse daran.
Private Sub test_Click()
Dim WordObj As Object
Dim Bereich As Variant
Dim WordDoc As Object
Dim ExTab As Object
Dim i As Integer
Dim x As Integer
Dim y As Integer
Dim arrWks()
Dim iCounter As Integer, iCount As Integer
For iCounter = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(iCounter) Then
Worksheets(ListBox1.List(iCounter)).Activate
End If
Next iCounter
i = ActiveSheet.UsedRange.Rows.Count
Bereich = Range("A4:F" & i).Value
On Error Resume Next

Set WordObj = GetObject(, "word.application.9")
If Err.Number = 429 Then
Set WordObj = CreateObject("word.application.9")
Err.Number = 0
End If

WordObj.Visible = True
Set WordDoc = WordObj.Documents.Add
Set ExTab = WordDoc.Tables.Add _
(WordObj.Selection.Range, UBound(Bereich, 1), UBound(Bereich, 2))
With ExTab
For x = 1 To UBound(Bereich, 1)
For y = 1 To UBound(Bereich, 2)
.Cell(x, y).Range.InsertAfter Bereich(x, y)
Next y
Next x
End With
Set WordObj = Nothing
Set WordDoc = Nothing
Set ExTab = Nothing
Worksheets("Hilfsblatt").Activate

End Sub


Besten Dank nochmals
Gruss Roger

Anzeige
Danke für die Info :-) o.T.
18.05.2003 18:08:17
Ramses

...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige