Running VBA is a client-side only operation. This means your PC has to be on and Outlook has to be running with scripting enabled. If you don't have Outlook running, what you want is not possible. Perhaps there is a server side solution, but that is a question for serverfault.com
If you want to process attachments on specific e-mails, this is what I use. It works perfectly for me in Outlook 2013:
Public Sub saveAttachtoDisk(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String saveFolder = "c:\temp" For Each objAtt In itm.Attachments objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName Set objAtt = Nothing Next End Sub
The last part of the rule is the run a script.
For others that are not familiar with Outlook VBA, you need to bring up the Developer Ribbon.
Paste the code above, save the VBA, then reference it in your rule.