![]() |
If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. |
|
|
Thread Tools | Search this Thread | Display Modes |
#31
|
|||
|
|||
![]()
I have no idea what's wrong. From what you've said none of the object such
as NameSpace or the Rules collection are ever anything other than Nothing. That's why the code isn't running, but I don't know why. I've never seen any situation like what you describe. Let's see if we can get any code to run at all. Put this in the same code module you have your rules code: Sub Test MsgBox "This is a test" End Sub Put your cursor on the MsgBox line and press F5. Do you get the MsgBox dialog? -- 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 "DLGolfs" wrote in message ... Ken: First, I went to someone else b/c I left my reply on 3/16 and had not heard anyting and gave up on 3/22, that is why I tried someone else. Secondly, I gave you all these security settings already in an earlier post. from 3/16 but here it is again: So I'll do it this way: Yes, OUtlook 2007, no errors, when I run the macro through OUtlook, it opens VB and highlights the Setcol Rules line, that is it, not errors Programming says "warn me about suspicious.....(recommended)" Warnings for all macros Warn me about suspecious activity when my , etc etc Bottom line, is that you wrote the program, not me, and I used a lot of time to figure out what you were asking and tried to answer the best of my ability. I gave up b/c I had not heard from you in 6 days, hey maybe you were on vacation, but I just figured you got ****ed off and was frustrated that I was SO dumb about this. My rule runs fine manually, it is call Delete Spam, I copied and pasted your programming into VBA, enabled macros. Opened the junk folder, clicked on macros, run the delete spam macro and all it does is highlight my first e-mail in the junk folder, no errors nothing. So maybe delete everything and start over. I have not gotten a response from my other posts, just ignored me, oh well, so be it. So whatever you want to do is fine with me. You wrote: The first thing, before any rules stuff, is that you should be getting a valid NameSpace object. I If you aren't then something is drastically wrong that must be corrected before any of your code will run at all. I'd be curious about the security settings as I asked, and I'd also be curious to see if you are running an anti-virus program that maybe is breaking code with a script stopper. I don't know what a valid NameSpace object looks like I do run an anti-virus program called Avira, I can look to see if it is stopping scripts but doubt it b/c I would have other indications of this, don't you think? Sorry about all this, but I just thought that you had given up on me! |
Ads |
#32
|
|||
|
|||
![]()
Here is what I have in the VBA:
Sub RunRuleDeleteSpam() Dim oNS As Outlook.NameSpace Dim oStore As Outlook.Store Dim colRules As Outlook.Rules Dim oRule As Outlook.Rule Set oNS = Application.GetNamespace("MAPI") Set oStore = oNS.DefaultStore Set colRules = oStore.Rules() Set oRule = colRules.Item("Delete Spam") oRule.Execute End Sub Sub Test() MsgBox "This is a test" End Sub When I put the cursor at the new sub Test() it runs and a dialog box opens that says "this is a test" When I put the cursor at the beginning of subrunrule, then it gives me a 438 error, I hit debug and highlights the setcolrules line in the second section. Hope that helps you "Ken Slovak - [MVP - Outlook]" wrote: I have no idea what's wrong. From what you've said none of the object such as NameSpace or the Rules collection are ever anything other than Nothing. That's why the code isn't running, but I don't know why. I've never seen any situation like what you describe. Let's see if we can get any code to run at all. Put this in the same code module you have your rules code: Sub Test MsgBox "This is a test" End Sub Put your cursor on the MsgBox line and press F5. Do you get the MsgBox dialog? -- 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 "DLGolfs" wrote in message ... Ken: First, I went to someone else b/c I left my reply on 3/16 and had not heard anyting and gave up on 3/22, that is why I tried someone else. Secondly, I gave you all these security settings already in an earlier post. from 3/16 but here it is again: So I'll do it this way: Yes, OUtlook 2007, no errors, when I run the macro through OUtlook, it opens VB and highlights the Setcol Rules line, that is it, not errors Programming says "warn me about suspicious.....(recommended)" Warnings for all macros Warn me about suspecious activity when my , etc etc Bottom line, is that you wrote the program, not me, and I used a lot of time to figure out what you were asking and tried to answer the best of my ability. I gave up b/c I had not heard from you in 6 days, hey maybe you were on vacation, but I just figured you got ****ed off and was frustrated that I was SO dumb about this. My rule runs fine manually, it is call Delete Spam, I copied and pasted your programming into VBA, enabled macros. Opened the junk folder, clicked on macros, run the delete spam macro and all it does is highlight my first e-mail in the junk folder, no errors nothing. So maybe delete everything and start over. I have not gotten a response from my other posts, just ignored me, oh well, so be it. So whatever you want to do is fine with me. You wrote: The first thing, before any rules stuff, is that you should be getting a valid NameSpace object. I If you aren't then something is drastically wrong that must be corrected before any of your code will run at all. I'd be curious about the security settings as I asked, and I'd also be curious to see if you are running an anti-virus program that maybe is breaking code with a script stopper. I don't know what a valid NameSpace object looks like I do run an anti-virus program called Avira, I can look to see if it is stopping scripts but doubt it b/c I would have other indications of this, don't you think? Sorry about all this, but I just thought that you had given up on me! . |
#33
|
|||
|
|||
![]()
OK, so at least some VBA code can run.
Let's try adding additional testing and error handling to see more of what's going on here. I'm still mystified as to what's happening. You are running in Outlook 2007, correct? Sub RunRuleDeleteSpam2() Dim oNS As Outlook.NameSpace Dim oStore As Outlook.Store Dim colRules As Outlook.Rules Dim oRule As Outlook.Rule Set oNS = Application.GetNamespace("MAPI") If Not (oNs Is Nothing) Then Set oStore = oNS.DefaultStore If Not (oStore Is Nothing) Then Set colRules = oStore.Rules() If Not (colRules Is Nothing) Then Set oRule = colRules.Item("Delete Spam") If Not (oRule Is Nothing) Then oRule.Execute Else MsgBox "Rule Delete Spam is nothing" End If Else MsgBox "Rules collection is nothing" End If Else MsgBox "Default Store is nothing" End If Else MsgBox "NameSpace is nothing" End If End Sub Try this new code that provides a little more information. I don't think it will work or help though, I think something very odd is going on that might not be possible to figure out via newsgroup posts. -- 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 "DLGolfs" wrote in message ... Here is what I have in the VBA: Sub RunRuleDeleteSpam() Dim oNS As Outlook.NameSpace Dim oStore As Outlook.Store Dim colRules As Outlook.Rules Dim oRule As Outlook.Rule Set oNS = Application.GetNamespace("MAPI") Set oStore = oNS.DefaultStore Set colRules = oStore.Rules() Set oRule = colRules.Item("Delete Spam") oRule.Execute End Sub Sub Test() MsgBox "This is a test" End Sub When I put the cursor at the new sub Test() it runs and a dialog box opens that says "this is a test" When I put the cursor at the beginning of subrunrule, then it gives me a 438 error, I hit debug and highlights the setcolrules line in the second section. Hope that helps you |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Outlook 2007 rule won't start a macro | Dmitry Sotnikov | Outlook and VBA | 1 | August 1st 08 04:57 PM |
Create a Macro in Outlook | Bert | Outlook and VBA | 10 | July 2nd 08 08:32 PM |
Run macro through rule | Flash08 | Outlook - General Queries | 2 | December 20th 07 04:16 PM |
create Macro, Outlook 2007 - create is grayed out | Dave Horne[_2_] | Outlook - General Queries | 2 | November 4th 07 09:45 AM |
Create a macro that runs from a Rule | CF_business_analyst | Outlook and VBA | 8 | January 13th 06 05:12 PM |