boein Posted January 12, 2015 Share Posted January 12, 2015 Hi All, Pasting a word document as a word-object as an icon into an active word document does not seem to work. When pasting, the content of the word document is pasted instead of the word-file object. Also word seems to open this "pasted" document resulting in open-file problems when closing word. I can do it the basic autoit-way using send keys - and focus on windows (focus on word - Paste special - Paste as file display as icon) ... but I would prefer using COM-objects. This is what I have so far. It works but whatever datatype I try word always pastes the content and opens that document, I only want the pasted word as an embedded object. Anybody ideas? #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <WindowsConstants.au3> #include <Misc.au3> $obj=Objget("","Word.Application") $obj.visible = true $ad=$obj.activedocument _ClipPutFile ( "c:testdoc.doc") $ad.range.pastespecial DisplayAsIcon:=true, datatype:=1 Link to comment Share on other sites More sharing options...
water Posted January 12, 2015 Share Posted January 12, 2015 Welcome to AutoIt and the forum! Did you have a look at the Word UDF that comes with AutoIt? Makes working with Word much easier. Another hint: Please enclose script code in AutoIt code tags (the blue "A") in the editor. Will greatly enhance readability. I will have a look at your problem as soon as I get to a computer with Word installed. My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
water Posted January 12, 2015 Share Posted January 12, 2015 AutoIt does not support parameters by name. So you need to specifiy all parameters in sequence. Parameters you do not want to specify need to be replaced with the "Default" keyword. Global Const $wdPasteOLEObject = 0 ; Method: PasteSpecial(IconIndex, Link, Placement, DisplayAsIcon, DataType, IconFileName, IconLabel) $ad.range.PasteSpecial(Default, Default, Default, True, $wdPasteOLEObject) I'm not sure you want to copy the file as RTF but as OLE. My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
boein Posted January 14, 2015 Author Share Posted January 14, 2015 (edited) AutoIt does not support parameters by name. So you need to specifiy all parameters in sequence. Parameters you do not want to specify need to be replaced with the "Default" keyword. Global Const $wdPasteOLEObject = 0 ; Method: PasteSpecial(IconIndex, Link, Placement, DisplayAsIcon, DataType, IconFileName, IconLabel) $ad.range.PasteSpecial(Default, Default, Default, True, $wdPasteOLEObject) I'm not sure you want to copy the file as RTF but as OLE. Thanks for pointing me to the right direction $ad.range.PasteSpecial(Default, Default, Default, True, $wdPasteOLEObject) did not work, not all parameters were used ("iconlabel" in this case) using $ad.range.PasteSpecial (Default, Default, Default, True, Default,Default,Default) instead did the trick. Regards, Boein Edited January 14, 2015 by boein Link to comment Share on other sites More sharing options...
water Posted January 14, 2015 Share Posted January 14, 2015 My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now