Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: MrJingels am 27.09.04 - 08:15:24
-
Hat jemand schon einmal ein Script gebastelt , mit dem er Text aus einem MS Word Dokument in ein Textfeld in Lotus Notes kopiert?
Ablauf:
1. Word-Dok öffnen oder das geöffnete Dokument "aktivieren"
2. alles markieren
3. in Textfelt (oder RTF) im Notes springen
4. Einfügen
5. Word-Dok schließen
-
Hat jemand schon einmal ein Script gebastelt , mit dem er Text aus einem MS Word Dokument in ein Textfeld in Lotus Notes kopiert?
Ja. ;) ;D
-
***** MOD Alert ***
@M3: löscht du deinen "konstruktiven" Beitrag selber oder soll ich das machen ?
-
Na schön ;D
Könntest du evtl. das Script hier posten?
-
@eknori: Hey, es ist Montag Morgen, da darf man doch ein wenig boese sein ;) Und bei der Fragestellung war die Antwort ja aufgelegt.
MrJingels hat sich ob meiner Antwort ja auch nicht aufgeregt.
Take it easy 8)
@MrJingels: Gerne, geht aber erst Abends, ich hab den Code grad nicht bei der Hand.
-
Hallo MrJingels,
hier ein Auszug um auf Word Dokumente zuzugreifen.
dim wordObj as Variant
dim wordDoc As Variant
set wordObj = createobject("Word.Application")
set wordDoc = wordObj.open ("C:\Worddocument.doc")
......
set worddoc = Nothing
wordObj.Quit
Set wordObj = Nothing
in der Zeile set wordDoc = ... mußt Du natürlich dein den Pfad un den Dateinamen von deinem Word-Doc angeben.
-
@zherman:
soweit war ich schon - danke.
mein problem liegt beim markieren - kopieren und einfügen. diese befehle kenn ich nicht, bzw. weiß nicht wo nachsehen.
-
Nachsehen für Word-Klassen: in Word -> Alt+F11 -> F1 (falls Hilfe für VBA installiert)
Nachsehen für Notes-Klassen: im NotesDesigner -> F1
;)
-
Hallo,
so sollte es gehen. Habe immer nur von LN nach Word transferiert.
wordDoc.SelectAll
uidoc.FieldAppandText("myRichtext", worddoc.Selection)
-
Hallo,
bei mir ist das schon 2 Jahre her das ich mal mit script auf Word zugeriffen habe. Ich musste aber nur aus vielen Worddokumenten ein Worddokument erstellen und einiges kopieren. Am besten ist du zeichnest dir in Word ein Makro auf und siehtst es dir dann den Code an, wenn du VBA hast. Dann haste schon mal die Befehle. Ich habe einen neuen Rechner und da sind die Makros weg. Aber ein bisschen habe ich aus dem Script noch gelesen.
so war es in der Kopfzeile wenn ich es noch richtig weiss
markieren der Zeile
ObjWord.Selection.MoveDown, 5 ' geht man nach unten in Word 5 Anzahl der zeilen
ObjWord.Selection.MoveDown, 2,1 2 Zeilen nach unten und eins nach rechts glaub ich
ObjWord.Selection.MoveUp, 1 nach oben eine Zeile
ObjWord.Selection.Copy kopieren der Markierung
ObjWord.Selection.Paste wieder in Word an einer Stelle einfügen
sel_title$ = ObjWord.Selection.Text text in eine Stringvariable schreiben
Call ObjWord.Selection.GoTo (1) wechsle zur nächsten WordSeite im Dokument
Call ObjWord.Selection.HomeKey (6) springe zum anfang des Dokuments
Ich hoffe ich konnte einwenig helfen, aber lege mich nicht genau mehr fest ist halt scho zu lange her.
Gruß
Johannes
-
So, teilweise mit eurer Hilfe habe ich dies nun selbst hinbekommen.
Hier das Script:
Sub Click(Source As Button)
Dim ws As NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim WordDocument As Variant
Dim WordApplication As Variant
Set ws = New NotesUIWorkspace
Set uidoc = ws.CurrentDocument
Set WordDocument= GetObject("D:\Dokument1.doc","Word.Document") 'Dokumet öffnen
Set WordApplication = WordDocument.Application 'Applikation zum Dokument
WordApplication.visible=True 'Applikation sichtbar machen
Forall selection In WordDocument.StoryRanges
Selection.WholeStory 'Alles markieren
Selection.Copy 'kopieren
End Forall
Call uidoc.GotoField("tmp") 'zum Feld im aktiven Dokuement springen
Call uidoc.Paste 'in Feld einfügen
Call uidoc.Save 'NotesDoc speichern
Call WordDocument.Close() 'nur aktuelles Dokument wird geschlossen
Set WordDocument = Nothing
If WordApplication.Documents.Count = 0 Then
Call WordApplication.Quit() ' geöffnete Word-Anwendung wird geschlossen
Set WordApplication = Nothing
End If
End Sub
Sollte jemand Tipps haben, wie es besser geht, dann bitte antworten.
Eines weiß ich selbst nicht so genau. Warum ich für die "Selection" den Forall-Teil verwenden muss. Ich habs aber nicht anders hinbekommen.