Anzeige
Archiv - Navigation
376to380
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
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tja, leider zu früh gefreut!!

Tja, leider zu früh gefreut!!
09.02.2004 17:23:03
Andre
Dachte eigentlich mein Problem wäre gelöst, aber nö!
Die folgende Zeile funktioniert, solange ich sie in Word ausführe:
ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
Aber sobald ich dieselbe Zeile folgendermaßen in Excel ausführen will, geht´s nicht!
myWord.ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
Es kann eigentlcih nur am "Range:=wdPrintFromTo, From:="1", To:="1"" liegen, denn ohne diesen Zusatz haut es hin!
Gruß Andre

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tja, leider zu früh gefreut!!
09.02.2004 17:24:53
Alex K.
Hallo Andre,
kannst du mal einstellen, wie die das Objekt "myWord" erstellst.
Danke
Okay, hier der Code:
09.02.2004 17:35:01
Andre
Public

Sub DruckBeleg()
Dim myWord As Object
On Error Resume Next
Dim i As Long, j As Integer
Set myWord = GetObject("Word.Application.9")
If Err.Number <> 0 Then
Err.Clear
Set myWord = CreateObject("Word.Application.9")
Else
myWord.Activate
myWord.Visible = True: objWW.WindowState = wdWindowStateMinimize
End If
myWord.Application.Documents.Open "C:\Auftrag.doc"
myWord.ActiveDocument.Bookmarks("Titel").Range.Text = Worksheets("Kontrolle").Range("D4")
myWord.ActiveDocument.Bookmarks("Name").Range.Text = Worksheets("Kontrolle").Range("E4")
myWord.ActiveDocument.Bookmarks("Name2").Range.Text = Worksheets("Kontrolle").Range("F4")
myWord.ActiveDocument.Bookmarks("Adresse").Range.Text = Worksheets("Kontrolle").Range("G4")
'If [ISNA(VLOOKUP("X",Kontrolle!AB23:AB44,1,0)=true)] Then myWord.ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
myWord.ActiveDocument.PrintOut
myWord.ActiveDocument.Close savechanges:=False
'myWord.Application.Quit (True)
Set myWord = Nothing
End Sub

Anzeige
AW: Okay, hier der Code:
09.02.2004 17:38:50
Alex K.
Hallo Andre,
so dürfte es gehen. Ansonsten sage mal, was für ein Fehler kommt bzw. was er falsch macht.
Danke

myWord.ActiveDocument.PrintOut Range:=3, From:="1", To:="1"

Das funktioniert, aber warum "3"? o.T.
09.02.2004 17:43:08
Andre
AW: Das funktioniert, aber warum "3"? o.T.
09.02.2004 17:51:40
Alex K.
Hallo Andre,
es ist so, dass das Objektmodul von Word in Excel nicht automatisch eingebunden ist. D.h. du kannst zwar Word-Objekte anlegen und diese mit den Methoden / Eigenschaften arbeiten, aber Excel "weiss" nicht, dass es sich um Word handelt. Deshalb kennt Excel auch nicht die Konstante "wdPrintFromTo" (diese hat den Wert 3). Ich hatte beim Testen einen Verweis (im VBA-Editor über "Extras -> Verweise") auf "Microsoft Word 9.0 Object Library" gesetzt, deswegen hat es bei mir geklappt. Also hast du zwei Möglichkeiten:
1) Verweis setzen und "wdPrintFromTo" verwenden
2) oder den Konstanten-Wert von 3 verwenden.
Anzeige
Alles klar, danke für deine Hilfe. o.T.
10.02.2004 08:06:39
Andre

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige