Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1080to1084
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
Inhaltsverzeichnis

Zwischenablage Kopie nach Word

Zwischenablage Kopie nach Word
11.06.2009 13:03:22
Peter
Hallo,
vorab, ich weiß, ich bin im falschen Forum. Aber ich kenne kein so kompetentes Word-Forum. Vielleicht kann mir ja doch jemand helfen.
Mein Problen:
Ich kopieren per VBA Kommentare einzelner Zellen in die Zwischenablage. Dort kommen sie auch an. Mit VBA öffne ich nun Word und möchte die Zwischenablage in die Word-Datei einsetzen. Hier fehlen mir die richtigen Word-Makro-Befehle. Nur mit selection.paste geht das nicht. Mit getfromClipboard bekomme ich eine Formatect-Struktur-Fehlermeldung.
Vielleicht hat jemand das Problem schon mal gelöst, - oder kann mir ein gutes Word-Forum nennen.
Für den freundlichen Helfer
Dank vorab
Grüße
Peter

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zwischenablage Kopie nach Word
11.06.2009 14:02:39
Ramses
Hallo
WORD hat auch einen Makrorekorder :-)
Selection.PasteAndFormat (wdPasteDefault)
Davor musst du halt noch dein WordObject stellen. Dann sollte das gehen.
DeineWordVariable.Selection.PasteAndFormat (wdPasteDefault)
Gruss Rainer
AW: Zwischenablage Kopie nach Word
11.06.2009 15:38:29
Peter
Hallo Rainer,
danke für deine Tipps, aber so richtig weiter komme ich nicht. Ich habe folgenden Code verwendet:

Sub ZwischenablageEinfügen()
Selection.EndKey Unit:=wdStory
Selection.Paste
End Sub


Das funktioniert, wenn ich das kleine Makro in Word aufrufe. Es funktioniert aber nicht, wenn ich es mit AutoOpen verbinde.


Sub AutoOpen()
Selection.EndKey Unit:=wdStory
Selection.TypeParagraph
ZwischenablageEinfügen
End Sub


Alternativ habe ich versucht, Deinen Hinweis umzusetzen – mit wenig Erfolg


Sub ZwischenablageEinfügen()
Dim Ablage As DataObject
Dim stext As String
Selection.EndKey Unit:=wdStory
Set Ablage = New DataObject
Ablage.GetFromClipboard
stext = Ablage.GetText(1)
stext.Selection.Paste
End Sub


Hier erhalte ich eine Fehlermeldung bei stext (wohl weil stext kein object ist).
Luc meinte, ich solle es mal bei Office-Loesung probieren. Da werde ich mich jetzt anmelden. Es würde mich aber freuen, wenn Du aber noch einen Hinweis hast.
Grüße
Peter

Anzeige
AW: Zwischenablage Kopie nach Word
11.06.2009 20:27:16
ramses
Hallo
Du schreibst du öffnest doch Word über ein Object.
Das musst dieses nehmen.
Zeig mal den Code den du verwendest,.. vorausgesetzt du hast im anderen Forum noch keine Lösung
Gruss Rainer
AW: Zwischenablage Kopie nach Word
11.06.2009 21:30:29
Peter
Hallo Rainer,
schön, dass Du Dich noch einmal gemeldet hast. Ich hatte folgenden Code benutzt.

Sub Tagebuch()
worddatei = Application.ActiveWorkbook.Path & "\Tagebuch.doc"
If Dir(worddatei) = "" Then
Beep
MsgBox "Das Verzeichnis der Worddatei oder" & vbCr & _
"die Worddatei > Andreas-Tagebuch.doc 



Sub CommentCopy()
Dim oData As New DataObject
Dim sText As String
sText = ""
If OpenClipboard(0&)  0 Then
Call EmptyClipboard
Call CloseClipboard
End If
If ActiveCell.Comment Is Nothing Then
sText = Date
With oData
.SetText sText
.PutInClipboard
End With
Else
sText = ActiveCell.Comment.Text
With oData
.SetText sText
.PutInClipboard
End With
End If
End Sub


'Mike vom Forum Office-loesung gab mir den Hinweis den Text doch direkt über Excel zu übergeben. Ich habe es mit folgendem Code versucht.
If ActiveCell.Comment Is Nothing Then
sText = Date & Chr(13)
Else
sText = ActiveCell.Comment.Text & Chr(13)
End If
Set wrdDoc = wrdapp.Documents.Open(worddatei)
wrdapp.Activate
wrdapp.Selection.TypeText sText
Damit klappt es. Aber über die Zwischenablage müsste es doch auch gehen. Denn wenn die Worddatei aufgerufen ist, kann ich den Text über das Einfügensymbol abrufen. Wenn Du dafür eine Lösung hättest, wäre schön. Denn solche Probleme/Aufgaben treten ja immer mal wieder auf. Die Lösung mit wrdapp.Selection.TypeText sText ist natürlich viel einfacher und mein heutiges Problem gelöst..
Danke für Dein Bemühen
Grüße
Peter

Anzeige
AW: ASCII-Zeichen 'BD' ausgeben
11.06.2009 23:20:08
Ramses
Hallo
Ich hätte es genauso gemacht.
Der Zugriff auf die Zwischenablage und deren spezifische Handhabung ist recht komplizert und rechtfertigt den Aufwand nicht.
Gruss Rainer
...und der "günstigere" auf das Office-Command-...
12.06.2009 01:16:29
Luc:-?
...Objekt fkt ab Office2007 nicht mehr mit VBA, weil es dort kein Command mehr ist wie ich schmerzlich feststellen musste...!
Gruß Luc :-?
Ansonsten, Office-Loesung, Lisa ist kompetent...
11.06.2009 14:37:33
Luc:-?
...genug, Peter!
Gruß Luc :-?
AW: Ansonsten, Office-Loesung, Lisa ist kompetent...
11.06.2009 15:39:27
Peter
Hallo Luc,
danke für den Hinweis, ich werde es dort einmal versuchen.
Grüße
Peter
Bitte sehr! Hoffentl hilft's... Gruß owT
11.06.2009 16:27:53
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige