# Outlook 2007 - Modifying Standard Message Form



## ppoint (Jan 24, 2010)

Hi - I am brand new to this support site. I am not a programmer, but really 'thought' I could solve this problem. If anyone could help I would be very grateful. Here's my simple problem: 

Using Outlook 2007, how do I modify the 'message' form in the 'standard forms library'? I have designed a 'custom' message form but it appears I can only publish to a personal library (not the standard library) . . . and that personal library doesn’t seem to help one bit. In other words, I am unable to apply the custom form as the standard message form every time I create a new email or reply to an email. 

Note: within the 'Forms' tab under Inbox-Properties, the "Allow these forms in this folder" is greyed out. 

Do I need to higher a programmer, or is there something I'm missing. I feel like I'm so close. Thank you in advance!


----------



## RSpecianjr (Jan 20, 2010)

Hey ppoint,

What type of custom form is it? 

Forms with the IPM.Note Message Class cannot be used as the default form for a folder.

I do not recommend that you use a custom form for the default. Reason being, if you send the form to someone that is not using outlook, they will likely not be able to read it. 

Also, if this is on an exchange you would want to post the form to the 'Organizational Forms Library'. That way everyone on the exchange is able to read messages that use the form.

Provide a bit more information on what your trying to accomplish and I can hopefully steer you in the right direction.

Regards,

Robert Specian Jr.


----------



## ppoint (Jan 24, 2010)

Thanks Robert. Ok, here goes: 

This is not exchange. Just standalone Outlook 2007 (Windows 7). All I need is to slightly revise the inbox form to add two simple text fields that I have already created (i.e., "user-defined" fields). If you know the answer to that you don't even need to read the rest below  Thanks!!

But here's further info if needed...

• I have already added these two text fields as 'columns' in the inbox (and also sent items). And I use them daily. 

• Purpose for these text fields: I use them to simply type my own 'task' description. In other words, if an email triggers for me some follow-up action (e.g., 'reply to Robert'), it is FAR easier for me to just type the task in this text field as I am reading the email ... as opposed to creating a separate 'Task' item in the task folder (or sliding the email to the Task list folder). Creating a separate 'task' item is just too many mouse/clicks and besides I lose the ability to just search/filter/sort by 'from' if needed to see history. 

• I also added these fields to my sent items columns and then use "All Outlook Folders" and my custom views to see a complete/contiguous list of inbox or sent items. I have programmed key-strokes to instantly categorize and priorities. So, together with my own plain-English task description in the text field ... I can instantly sort on what my task priorities are ... and also get a full history of email by sorting by 'from' or 'subject', also. 

• Side note: to be able to add these custom fields to the inbox and sent columns I had to actually create a custom 'message' and 'Post' form first. Only then were these few simple text fields available in the 'field chooser'. So I have gotten pretty far and things are working so far great. But last step is to add the fields to the inbox 'message' form itself ... so as I'm reading an email I can then prioritize and categorize (with my auto-key-strokes) and then type my very own action item in my own text field in plain-English. No umpteen clicks to create an outlook 'Task Item'. 

• Final point. I realize I am using Outlook perhaps differently than most. I am a business owner and totally swamped with a billion emails from multiple projects and clients. So far my setup is working out great, and this last step will help greatly. 

Eager to hear your thoughts.

Thanks!


----------



## RSpecianjr (Jan 20, 2010)

Good morning ppoint,

I misunderstood your original message, but I believe I understand what your trying to do now. This shouldn't be too hard to accomplish.

For your incoming messages to be used in combination with the custom form, we need to change the message class of incoming messages to that of the custom form. This can be done with VBA.

I'm fairly busy right now, but I should have something for you later today.

Regards,

Robert Specian Jr.


----------



## ppoint (Jan 24, 2010)

Awesome. Eager to hear. Thanks!


----------



## RSpecianjr (Jan 20, 2010)

Hey ppoint,

I apologize but I didn't get a chance to look at it today. I'll should have something this weekend for you. The code you will want to impliment should be using the "NewMailEx" event as the trigger.

Sorry for the delay.

Regards,

Robert Specian Jr.


----------



## ppoint (Jan 24, 2010)

Thanks Robert. Look forward to it. Really, really grateful for your help. ~ Bill


----------



## RSpecianjr (Jan 20, 2010)

Hey Bill,

I was able to do a few tests with this:


```
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Dim EID() As String
    Dim EntryIDNum As Integer
    Dim msg As MailItem

    On Error Resume Next
    EID = Split(EntryIDCollection, ",")
    For EntryIDNum = 0 To UBound(EID)
        Set msg = Application.Session.GetItemFromID(EID(EntryIDNum))
        msg.MessageClass = "IPM.Note.test"
        msg.Save
    Next
End Sub
```
It goes under 'ThisOutlookSessions' in the VBA Editor. Change IPM.Note.test to IPM.Note.*your Custom form name*

I don't have an SMTP server settings at my house, so I wan't able to test replying/forwarding (shouldn't be an issue though). I also didn't test large amounts of emails coming in at once. The 'NewMailEx' event might miss some of the messages if there is a large amount of incoming messages. Let me know if this is an issue in your case.

Hope this helps,

Robert Specian Jr.


----------



## ppoint (Jan 24, 2010)

Hi Robert -- Thank you! Pardon my reply delay. Too busy. I posted the following as you directed, but no dice. Absolutely no perceived change (i.e., I do not see any access to my custom message form, not when creating a new message, and not when opening an inbox message). I am not a programmer and just suspect there is something else that needs to be done that a gent like you would know in minutes. Can you help further? Is this something we should take offline from this forum where I can pay for your services? Or do you have a recommendation for an Outlook-Forms specialist programmer? I just need this done; it has already cost far too much time than I have. Let me know. ~ Bill

Here's what I pasted to VBA Editor: 

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim EID() As String
Dim EntryIDNum As Integer
Dim msg As MailItem

On Error Resume Next
EID = Split(EntryIDCollection, ",")
For EntryIDNum = 0 To UBound(EID)
Set msg = Application.Session.GetItemFromID(EID(EntryIDNum))
msg.MessageClass = "IPM.Note.1. Custom Message Form"
msg.Save
Next
End Sub


----------

