From: Ken Slovak - [MVP - Outlook] on 15 Feb 2010 10:22 What doesn't work in Word/Outlook 2003 with that code? Any errors or what? Where is the code running, Word or Outlook? I assume that WordMail is set. One other question, when is the failing code running? What triggers it, a button or event or ...? -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Professional Programming Outlook 2007. Reminder Manager, Extended Reminders, Attachment Options. http://www.slovaktech.com/products.htm "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message news:uxa5P1krKHA.5896(a)TK2MSFTNGP04.phx.gbl... > OK I'll look at that - at the moment (for Office 2007) I am simply reading > the registry entry (where it exists), informing the user and disabling the > function. > > Interestingly the issue does not arise when working with the same > documents in Office 2003 with Word as e-mail editor (but then I suppose > you have the issue there of not being able to select Word as e-mail editor > from vba - as one door closes another opens). > > Whilst on the subject of Office 2003 the basic code segment (below) that > works in Office 2007 does not work for me in Word 2003. I cannot decide > whether this is because of a problem with the Office 2003 installation, or > whether simply it doesn't work in Office 2003. It works with Word 2003 and > Outlook 2007 and Word 2007 and Outlook 2007, but not Word 2003 and Outlook > 2003 - and if it is my installation at fault, I can't put my finger on > where :( > > Set oItem = oOutlookApp.CreateItem(olMailItem) > Set objDoc = oItem.GetInspector.WordEditor > Set objSel = objDoc.Windows(1).Selection > > With oItem > .To = strEMail > .Subject = "Subject" > Selection.Copy > .Display > objSel.Paste > End With > > 'Clean up > Set oItem = Nothing > Set oOutlookApp = Nothing > > -- > <>>< ><<> ><<> <>>< ><<> <>>< <>><<> > Graham Mayor - Word MVP > > My web site www.gmayor.com > Word MVP web site http://word.mvps.org > <>>< ><<> ><<> <>>< ><<> <>>< <>><<>
From: Graham Mayor on 15 Feb 2010 10:56 The code is run from Word. The part that doesn't work is the Copy and Paste part, so the selected text never makes it to the message. I just get an empty message with the subject and address filled. It is undoubtedly attributable to having Outlook using its own e-mail editor, but as I indicated earlier, it doesn't seem possible to switch editors in vba (unless you know a way). So 1. I either need a method that works with both editors or 2. I need two methods - one for each editor, or 3. I need to be able to switch editors or 4. I need to disable the function when the wrong editor is pre-selected For 2 & 4 I was planning to interrogate the registry to see which editor was in use and set up the code construction accordingly ... but I can't find a way to paste the text into the Outlook editor :(. -- <>>< ><<> ><<> <>>< ><<> <>>< <>><<> Graham Mayor - Word MVP My web site www.gmayor.com Word MVP web site http://word.mvps.org <>>< ><<> ><<> <>>< ><<> <>>< <>><<> "Ken Slovak - [MVP - Outlook]" <kenslovak(a)mvps.org> wrote in message news:e22u6KlrKHA.4828(a)TK2MSFTNGP05.phx.gbl... > What doesn't work in Word/Outlook 2003 with that code? Any errors or what? > Where is the code running, Word or Outlook? I assume that WordMail is set. > > One other question, when is the failing code running? What triggers it, a > button or event or ...? > > -- > Ken Slovak > [MVP - Outlook] > http://www.slovaktech.com > Author: Professional Programming Outlook 2007. > Reminder Manager, Extended Reminders, Attachment Options. > http://www.slovaktech.com/products.htm > > > "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message > news:uxa5P1krKHA.5896(a)TK2MSFTNGP04.phx.gbl... >> OK I'll look at that - at the moment (for Office 2007) I am simply >> reading the registry entry (where it exists), informing the user and >> disabling the function. >> >> Interestingly the issue does not arise when working with the same >> documents in Office 2003 with Word as e-mail editor (but then I suppose >> you have the issue there of not being able to select Word as e-mail >> editor from vba - as one door closes another opens). >> >> Whilst on the subject of Office 2003 the basic code segment (below) that >> works in Office 2007 does not work for me in Word 2003. I cannot decide >> whether this is because of a problem with the Office 2003 installation, >> or whether simply it doesn't work in Office 2003. It works with Word 2003 >> and Outlook 2007 and Word 2007 and Outlook 2007, but not Word 2003 and >> Outlook 2003 - and if it is my installation at fault, I can't put my >> finger on where :( >> >> Set oItem = oOutlookApp.CreateItem(olMailItem) >> Set objDoc = oItem.GetInspector.WordEditor >> Set objSel = objDoc.Windows(1).Selection >> >> With oItem >> .To = strEMail >> .Subject = "Subject" >> Selection.Copy >> .Display >> objSel.Paste >> End With >> >> 'Clean up >> Set oItem = Nothing >> Set oOutlookApp = Nothing >> >> -- >> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >> Graham Mayor - Word MVP >> >> My web site www.gmayor.com >> Word MVP web site http://word.mvps.org >> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >
From: Ken Slovak - [MVP - Outlook] on 15 Feb 2010 11:13 If the Outlook editor is being used and the format is HTML you can use IHTMLDocument and HTML code to paste text, etc. Something like this: If ((Not (oItem.GetInspector.IsWordMail )) And (Left(oItem.Application, 2) = "11")) Then ' tested and is OL editor and is OL 11 If oItem.GetInspector.EditorType = olEditorHTML Then Dim oHTML As MSHTML.IHTMLDocument2 Set oHTML = oItem.GetInspector.HTMLEditor ' now use HTML code -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Professional Programming Outlook 2007. Reminder Manager, Extended Reminders, Attachment Options. http://www.slovaktech.com/products.htm "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message news:uBWHudlrKHA.732(a)TK2MSFTNGP06.phx.gbl... > The code is run from Word. The part that doesn't work is the Copy and > Paste part, so the selected text never makes it to the message. I just get > an empty message with the subject and address filled. > > It is undoubtedly attributable to having Outlook using its own e-mail > editor, but as I indicated earlier, it doesn't seem possible to switch > editors in vba (unless you know a way). > > So > 1. I either need a method that works with both editors > or > 2. I need two methods - one for each editor, > or > 3. I need to be able to switch editors > or > 4. I need to disable the function when the wrong editor is pre-selected > > For 2 & 4 I was planning to interrogate the registry to see which editor > was in use and set up the code construction accordingly ... but I can't > find a way to paste the text into the Outlook editor :(. > > -- > <>>< ><<> ><<> <>>< ><<> <>>< <>><<> > Graham Mayor - Word MVP > > My web site www.gmayor.com > Word MVP web site http://word.mvps.org > <>>< ><<> ><<> <>>< ><<> <>>< <>><<>
From: Graham Mayor on 16 Feb 2010 01:12 Hmmm That looks interesting ... thanks :) -- <>>< ><<> ><<> <>>< ><<> <>>< <>><<> Graham Mayor - Word MVP My web site www.gmayor.com Word MVP web site http://word.mvps.org <>>< ><<> ><<> <>>< ><<> <>>< <>><<> "Ken Slovak - [MVP - Outlook]" <kenslovak(a)mvps.org> wrote in message news:OC1MXnlrKHA.5356(a)TK2MSFTNGP02.phx.gbl... > If the Outlook editor is being used and the format is HTML you can use > IHTMLDocument and HTML code to paste text, etc. Something like this: > > If ((Not (oItem.GetInspector.IsWordMail )) And (Left(oItem.Application, 2) > = "11")) Then > ' tested and is OL editor and is OL 11 > If oItem.GetInspector.EditorType = olEditorHTML Then > Dim oHTML As MSHTML.IHTMLDocument2 > Set oHTML = oItem.GetInspector.HTMLEditor > ' now use HTML code > > -- > Ken Slovak > [MVP - Outlook] > http://www.slovaktech.com > Author: Professional Programming Outlook 2007. > Reminder Manager, Extended Reminders, Attachment Options. > http://www.slovaktech.com/products.htm > > > "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message > news:uBWHudlrKHA.732(a)TK2MSFTNGP06.phx.gbl... >> The code is run from Word. The part that doesn't work is the Copy and >> Paste part, so the selected text never makes it to the message. I just >> get an empty message with the subject and address filled. >> >> It is undoubtedly attributable to having Outlook using its own e-mail >> editor, but as I indicated earlier, it doesn't seem possible to switch >> editors in vba (unless you know a way). >> >> So >> 1. I either need a method that works with both editors >> or >> 2. I need two methods - one for each editor, >> or >> 3. I need to be able to switch editors >> or >> 4. I need to disable the function when the wrong editor is pre-selected >> >> For 2 & 4 I was planning to interrogate the registry to see which editor >> was in use and set up the code construction accordingly ... but I can't >> find a way to paste the text into the Outlook editor :(. >> >> -- >> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >> Graham Mayor - Word MVP >> >> My web site www.gmayor.com >> Word MVP web site http://word.mvps.org >> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >
From: Doug Robbins - Word MVP on 16 Feb 2010 01:30
Hi Graham, But doesn't it mean that the message would need to be created as HTML "text" - that is tags and all? -- Hope this helps, Doug Robbins - Word MVP Please reply only to the newsgroups unless you wish to obtain my services on a paid professional basis. "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message news:upwfI8srKHA.4652(a)TK2MSFTNGP02.phx.gbl... > Hmmm That looks interesting ... thanks :) > > -- > <>>< ><<> ><<> <>>< ><<> <>>< <>><<> > Graham Mayor - Word MVP > > My web site www.gmayor.com > Word MVP web site http://word.mvps.org > <>>< ><<> ><<> <>>< ><<> <>>< <>><<> > > > "Ken Slovak - [MVP - Outlook]" <kenslovak(a)mvps.org> wrote in message > news:OC1MXnlrKHA.5356(a)TK2MSFTNGP02.phx.gbl... >> If the Outlook editor is being used and the format is HTML you can use >> IHTMLDocument and HTML code to paste text, etc. Something like this: >> >> If ((Not (oItem.GetInspector.IsWordMail )) And (Left(oItem.Application, >> 2) = "11")) Then >> ' tested and is OL editor and is OL 11 >> If oItem.GetInspector.EditorType = olEditorHTML Then >> Dim oHTML As MSHTML.IHTMLDocument2 >> Set oHTML = oItem.GetInspector.HTMLEditor >> ' now use HTML code >> >> -- >> Ken Slovak >> [MVP - Outlook] >> http://www.slovaktech.com >> Author: Professional Programming Outlook 2007. >> Reminder Manager, Extended Reminders, Attachment Options. >> http://www.slovaktech.com/products.htm >> >> >> "Graham Mayor" <gmayor(a)REMOVETHISmvps.org> wrote in message >> news:uBWHudlrKHA.732(a)TK2MSFTNGP06.phx.gbl... >>> The code is run from Word. The part that doesn't work is the Copy and >>> Paste part, so the selected text never makes it to the message. I just >>> get an empty message with the subject and address filled. >>> >>> It is undoubtedly attributable to having Outlook using its own e-mail >>> editor, but as I indicated earlier, it doesn't seem possible to switch >>> editors in vba (unless you know a way). >>> >>> So >>> 1. I either need a method that works with both editors >>> or >>> 2. I need two methods - one for each editor, >>> or >>> 3. I need to be able to switch editors >>> or >>> 4. I need to disable the function when the wrong editor is pre-selected >>> >>> For 2 & 4 I was planning to interrogate the registry to see which editor >>> was in use and set up the code construction accordingly ... but I can't >>> find a way to paste the text into the Outlook editor :(. >>> >>> -- >>> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >>> Graham Mayor - Word MVP >>> >>> My web site www.gmayor.com >>> Word MVP web site http://word.mvps.org >>> <>>< ><<> ><<> <>>< ><<> <>>< <>><<> >> > > |