You don't need a statement like this:
Set myOlApp = CreateObject("Outlook.Application")
Instead of myOlApp, use the intrinsic Application object. Likewise, there is an intrinsic Item object, representing the current item. (THat's why the event handler is Item_Write. Item is the object firing the event.) Therefore, Item.Subject, etc. is absolutely correct! Other property names you can look up in the object browser. Body is indeed the name of the item body property.
What kind of error?
Note that VBScript does not support constants other than vb* constants. For Outlook ol* constants, you need to declare them or use their literal values. olMailItem works only because its literal value is 0.