Suche Klasse für pdf und Word

Rene42

Erfahrenes Mitglied
Hi Leute,

ich hab nun mit der Klasse gearbeitet, mit der sich Excel Dateien aus Visual Basic erzuegen lassen.

Wie heißt die Klasse den für Word?

Gibt es sowas auch für PDF?

Gruß Rene
 
Hi,

dank dir erstmal wenn man nicht den richtigen Begriff bei Google sucht findet man doch nicht so schnell was man sucht.

Nun habe ich die MicrosoftWord Object Libary als die Klasse identifiziert, welche ich wohl brauche. Aber leider weiß ich nicht genau wie ich die Klasse erzeuge.

Brett vor dem Kopf oder so......

Code:
 Public clsWord as New ?Was denn hier?

Gruß Rene
 
Hi,

dank dir erstmal wenn man nicht den richtigen Begriff bei Google sucht findet man doch nicht so schnell was man sucht.
dann hast du nicht nach dem gesucht, was du wissen willst ;)
Nun habe ich die MicrosoftWord Object Libary als die Klasse identifiziert, welche ich wohl brauche. Aber leider weiß ich nicht genau wie ich die Klasse erzeuge.

Brett vor dem Kopf oder so......

Code:
 Public clsWord as New ?Was denn hier?

Gruß Rene
Es steht eigentlich alles im verlinkten Beispiel:
Code:
Private WordApp As New Word.ApplicationClass()
 
So nun bin ich ein bisschen weiter.

Dokument mit der VB 2008 Anwendung erstellen klappt. Freu

Hab mit dem Makrorecorder von Word viel aufgenommen und konnte daraus in der Regel den korrekten Code übernehmen oder ableiten. Allerdings find ich für den Befehl für Zeilenumbruch in VB 2008 nicht.

Code:
DocWord as New Document

DocWord.Range.(Befehl für Zeilenumbruch)

Der Makrorecorder gibt  TypeParagraph vor, was nicht funktioniert. Kann ich hier vielleicht auch einfach vbnewline nehmen, ist das dann annehmbar sauber

Gruß Rene

PS: @ Nico: Manchmal weiß man nur was man will und nicht was man sucht....:)

Beim weiteren bearbeiten trat noch ein komisches Problem auf. Alles wurde in die erste Zeile geschrieben. Keine Ahnung warum?
Hab zum Zeilenumbruch auch CHr(11) versucht was auch im letzten geschriebenen Abschnitt funktioniert.
 
Zuletzt bearbeitet:
Ein Zeilenumbruch besteht aus zwei Zeichen. ZEichen 11 und 13 der ASCII-Tabelle.
Besser ist, wenn du das statische Property Environment.NewLine nutzt. Dies liefert dir systemspezifisch den richtigen Zeilenumbruch.
 
ok, dann will ich Lieber die Ascii Zeichen nehmen, also dachte ich mir:

Code:
Dim Zeilenumbruch as string = Chr(11) + Chr(13)

Dann versuchte ich es mit folgendem

Code:
DocWord.Range.Text="Hello World"
DocWord.Range.Text=Zeilenumbruch
DocWord.Range.Text="Bye World"

Leider steht dann in der Worddatei "nur" das Bye World

Gruß Rene
 
Hi Leute,

ich habs nun ausprobiert, bringt aber auch nicht den erhofften Unterschied.

Gruß Rene
 
Hi

Du überschreibst ja auch jedesmal wieder die Range.
Du musst den Text hinzufügen. Dafür kannst du den += Operator nutzen.

Da String-Verkettung sehr teuer ist:
Schau dir aber auch mal die StringBuilder-Klasse an.
 
Zurück