![]() |
Change format of a mail back to text-only
Hi all,
maybe someone can help me. I stumbled over an (obviously well known) problem in Outlook 2000. The plan is to write a macro that adds some text at the end of every mail before sending the mail. When I modify the "Item.Body" of a plain-text mail, the format changes to Rich text. Although the mail is sent out as plain text, it is stored as RTF in the "Sent items"-folder. To get the old format back, I tried the following VBA-macro: Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Dim oCtl As Office.CommandBarControl Dim oCB As Office.CommandBar Set oCB = Application.ActiveInspector.CommandBars("Menu Bar") Set oCtl = oCB.Controls("Format") Set oCtl = oCtl.Controls("Plain Text") oCtl.Execute Set oCtl = Nothing Set oCB = Nothing End Sub But when I click the Send-button, I get a message saying that "changing the format to plain-text removes all formatting (blabla)". Is there any way of getting around this message? I already thought of using SendKeys "{TAB}{ENTER}", True after the 'oCtl.Execute', but the execution of the macro seems to stop until the user clicks one of the buttons. Any ideas? Thanks in advance! Markus |
Change format of a mail back to text-only
Markus, you need to change some MAPI properties, which aren't availabe via the Outlook object model. Here's a sample for how to do it with Redemption: http://www.dimastr.com/redemption/faq.htm#11 -- Viele Gruesse / Best regards Michael Bauer - MVP Outlook The most effective way to assign Outlook categories: http://www.shareit.com/product.html?...4&languageid=1 (German: http://www.VBOffice.net/product.html?pub=6) Am Tue, 6 Mar 2007 20:14:40 +0100 schrieb Markus Jakobi: Hi all, maybe someone can help me. I stumbled over an (obviously well known) problem in Outlook 2000. The plan is to write a macro that adds some text at the end of every mail before sending the mail. When I modify the "Item.Body" of a plain-text mail, the format changes to Rich text. Although the mail is sent out as plain text, it is stored as RTF in the "Sent items"-folder. To get the old format back, I tried the following VBA-macro: Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Dim oCtl As Office.CommandBarControl Dim oCB As Office.CommandBar Set oCB = Application.ActiveInspector.CommandBars("Menu Bar") Set oCtl = oCB.Controls("Format") Set oCtl = oCtl.Controls("Plain Text") oCtl.Execute Set oCtl = Nothing Set oCB = Nothing End Sub But when I click the Send-button, I get a message saying that "changing the format to plain-text removes all formatting (blabla)". Is there any way of getting around this message? I already thought of using SendKeys "{TAB}{ENTER}", True after the 'oCtl.Execute', but the execution of the macro seems to stop until the user clicks one of the buttons. Any ideas? Thanks in advance! Markus |
Change format of a mail back to text-only
Hi Michael,
thanks for your reply. Markus, you need to change some MAPI properties, which aren't availabe via the Outlook object model. Here's a sample for how to do it with Redemption: I know that it's possible to get around it using Redemption, but I'm not using it (yet). I was just looking for an explanation why the code stops when Outlook shows the warning and if there is a way to change this behaviour. I even tried another solution using (ugly) SendKeys-command. I replaced the whole code with SendKeys ""%txj", True which executes the 'Format' - 'Plain Text' - 'Yes' (in the german version of Outlook). This works fine and the code doesn't stop when Outlook shows the warning, as long as the user doesn't use STRG+ENTER to send the mail. Regards -- Markus |
All times are GMT +1. The time now is 08:19 AM. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2006 OutlookBanter.com