10.5k Aufrufe
Gefragt in Tabellenkalkulation von zwula Einsteiger_in (31 Punkte)
Hallo

ich habe eine Frage zur Übertragung von Excel-Daten in ein Word-Dokument (Office 2007).

Ich habe ein Excel-Tabellenblatt in dem ich verschiedene Dinge berechnen lasse. Dieses Tabellenblatt habe ich optisch so aufbereitet, dass man es eigentlich so wie es ist ausdrucken oder ein pdf generieren kann. Ich möchte aber aus dieser Excel-Tabelle ein Word-Dokument erzeugen, dass optisch genau so aussieht wie ich es in Excel dargestellt habe.

Der Code zur Erstellung des Word-Dokuments sieht folgendermaßen aus:
-------------------------------------------------------------------------------------
Sub ExcelTabelleNachWordZwischenablage()
Dim WordObj As Object
Dim WordDoc As Object
Dim i As Integer
Sheets("BudgetAngebot").Activate
i = ActiveSheet.UsedRange.Rows.Count
Range("A6:P" & i).Copy
On Error Resume Next
Set WordObj = GetObject(, "Word.Application.12")
If Err.Number = 429 Then
Set WordObj = CreateObject("Word.Application.12")
Err.Number = 0
End If
On Error GoTo 0
WordObj.Visible = True
Set WordDoc = WordObj.Documents.Add
WordObj.Selection.Paste
Application.CutCopyMode = False
Set WordObj = Nothing
Set WordDoc = Nothing

End Sub
-------------------------------------------------------------------------------------

Der funktioniert soweit ganz gut. Es werden alle Daten in Word übertragen. Das Problem ist aber, dass es die Formatierung ziemlich durcheinander hat. D.h. es sind immer große Zwischenräume zwischen den einzelnen Zeilen, obwohl ich die Zeilenhöhen im Excel alle meinen Vorstellungen definiert habe.

Meine Frage ist nun, ist es möglich bei der Übergabe von Excel-Daten via VBA in ein Word-Dokument das Format des Excel-Blattes 1 zu 1 zu übertragen?

Ich hoffe es kann mir jemand weiterhelfen. Danke schonmal!

Grüße
Steffen

8 Antworten

0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Steffen,

ich kann den Fehler bei mir nicht nachvollziehen - alle Formatierungen werden korrekt übertragen. Hast du Excel SP1 installiert?

Bis später,
Karin
0 Punkte
Beantwortet von
Hallo

Die Ursache ist nicht in Excel zu suchen
In Word 2007 solltest du die Formatvorlage Keine Leerraum ansteuern

Siehe hier Antwort 7

Die Standart Vorlage bewirkt dass beim "Enter" einen Leerraum entsteht .

Mit VBA kann ich dir aber nicht helfen - Kenn ich mich nicht aus !
Vielleicht hilft dir der Tip weiter
Gruss
JLM
0 Punkte
Beantwortet von zwula Einsteiger_in (31 Punkte)
danke für eure Tipps. Es hat super funktioniert.

Ich hab aber mal noch ne andere Frage: Kann man aus einem Tabellenblatt mit VBA sozusagen per Knopfdruck ein PDF vom aktiven Tabellenblatt erzeugen? Das müsste allerdings auf jedem beliebigen Rechner möglich sein...also ohne konkrete Pfade oder so. Funktionier so etwas?

Grüße
Steffen
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Steffen,

wozu VBA? Das geht doch in 2007 ganz problemlos: Datei -> speichern unter -> PDF oder XPS.

Bis später,
Karin
0 Punkte
Beantwortet von
Hallo

in Office 2007 ist ein speichern in PDF (Version abhängig) nur möglich wenn folgendes Add In vorhanden ist

Add in Save as PDF

Zu deine Frage
Das müsste allerdings auf jedem beliebigen Rechner möglich sein...

Dass ist abhängig was auf den Zielrechner für Möglichkeiten gibt (z.b PDF Drucker )
0 Punkte
Beantwortet von zwula Einsteiger_in (31 Punkte)
Hallo Karin,

ich weiß das es im Grunde am einfachsten wäre, über speichern unter -> PDF zu gehen. Da ich aber nur besimmte Bereiche bzw. Zeilen aus dem Tabellenbaltt in pdf umwandeln möchte, brauch ich doch VBA, oder? Mein Ziel ist es, per Knofdruck den gewünschten Bereich in ein PDF-Dokument einzubinden...also das ganze ein wenig zu automatisieren. keine Ahnung ob das geht? Hab schon das Internet danach durchsucht und nicht wirklich einen funktionierenden VBA-Code gefunden.

Grüße
Steffen
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Steffen,

zeichne das was du machen willst mit dem Makrorekorder auf.

Bis später,
Karin
0 Punkte
Beantwortet von zwula Einsteiger_in (31 Punkte)
Hi Karin,

ich hab das mit dem Aufzeichnen mit dem Makro versucht. Hab beim Aufzeichnen den Bereich markiert, den ich umwandeln will...bin dann auf drucken gegangen...habe anschließend Adobe PDF und "Markierung" drucken ausgwählt...und dann speichern gedrückt. Als das pdf erstellt war habe ich die Makro-Aufnahme gestoppt.

Dann hab ich das Makro auf einen Button gelegt. So weit funktiont es auch...d.h. er markiert den Bereich, öffnet den Dialog drucken und wählt pdf aus. Dann muss ich aber manuell auf speichern drücken. Anschließend fängt die PDF-Erstellung an...das Problem ist aber, dass jedesmal an der gleichen Stelle Excel ein Problem meldet und sich automatisch schließt und dann wiederherstellt...ohne das pdf erstellt zu haben.

Was hab ich falsch gemacht? Wieso bricht excel immer ab?

Tschü
Steffen
...