Macro to Change sort and collapse groups in Mail folder

Status
Not open for further replies.
B

Brad

Thanks for taking the time to read my question.

I'd like to write a macro that when run, changes the sort order of the mail

folder I'm in (Inbox or any sub folder) by From, and then Collapses All

Groups.

I've searched the internet and not found what I'm looking for. Can this be

done?

Thanks,

Brad
 
See if you can change that via Folder.CurrentView.Xml

Best regards

Michael Bauer

Am Fri, 8 Jan 2010 09:06:02 -0800 schrieb Brad:


> Thanks for taking the time to read my question.

> I'd like to write a macro that when run, changes the sort order of the


mail
> folder I'm in (Inbox or any sub folder) by From, and then Collapses All
> Groups.

> I've searched the internet and not found what I'm looking for. Can this be
> done?

> Thanks,

> Brad
 
Thansk for your reply Michael.

I did a lot of searching on the suggestion you gave me on line, and what I

found was this post. I've done a lot of programming in Access and Excel, but

not Outlook and am not catching on to it that well.

Are there some more hints you could give me?

Thanks agian,

Brad

"Michael Bauer " wrote:



> See if you can change that via Folder.CurrentView.Xml

> > Best regards
> Michael Bauer
>

>

> Am Fri, 8 Jan 2010 09:06:02 -0800 schrieb Brad:
>
> > Thanks for taking the time to read my question.
> > I'd like to write a macro that when run, changes the sort order of the

> mail
> > folder I'm in (Inbox or any sub folder) by From, and then Collapses All
> > Groups.
> > I've searched the internet and not found what I'm looking for. Can this be
> > done?
> > Thanks,
> > Brad

> .
>
 
I haven't played with it myself. However, this prints the current view

definition into the debug window:

Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml

I'd play with the folder view, print CurrentView.Xml, and see what changes.

If you have found how to define the settings you're looking for, you can

edit the xml property. See also the Apply, and the Save method of the View

object.

Best regards

Michael Bauer

Am Fri, 15 Jan 2010 08:36:01 -0800 schrieb Brad:


> Thansk for your reply Michael.

> I did a lot of searching on the suggestion you gave me on line, and what I
> found was this post. I've done a lot of programming in Access and Excel,


but
> not Outlook and am not catching on to it that well.

> Are there some more hints you could give me?

> Thanks agian,

> Brad

> "Michael Bauer " wrote:
>
>

>
>> See if you can change that via Folder.CurrentView.Xml
>

>> > > Best regards
> > Michael Bauer
> >

> >

>
>
>> Am Fri, 8 Jan 2010 09:06:02 -0800 schrieb Brad:
> >
> >> Thanks for taking the time to read my question.
> >
>>> I'd like to write a macro that when run, changes the sort order of the

> > mail
> >> folder I'm in (Inbox or any sub folder) by From, and then Collapses All
> >> Groups.
> >
>>> I've searched the internet and not found what I'm looking for. Can this


be
> >> done?
> >
>>> Thanks,
> >
>>> Brad

> > .
> >
 
I do this sort of thing all the time in my addins. I usually grab the XML in

the VBA Immediate window and put it in Notepad for easy editing. I then

modify the view as desired and use the modified XML file as my base for

setting up whatever custom view I want.

For sorting this is the sort of XML you need:

<orderby
<order
<heading>Received</heading
<prop>urn:schemas:httpmail:datereceived</prop
<type>datetime</type
<sort>desc</sort
</order
</orderby
You can have up to 3 sort fields within that <orderby> tag. Properties are

identified using DASL property tags, so you need to pick those up for your

view properties. You can also set grouping using tags for that.

"Michael Bauer " <mb@mvps.org> wrote in message

news:c10qgxsfqcgf.1w2sve9abvdch.dlg@40tude.net...

> I haven't played with it myself. However, this prints the current view
> definition into the debug window:

> Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml

> I'd play with the folder view, print CurrentView.Xml, and see what
> changes.
> If you have found how to define the settings you're looking for, you can
> edit the xml property. See also the Apply, and the Save method of the View
> object.

> > Best regards
> Michael Bauer
>

>

>
 
Thanks again Michael. I'll continue to work on this and learn.

Brad

"Michael Bauer " wrote:



> I haven't played with it myself. However, this prints the current view
> definition into the debug window:

> Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml

> I'd play with the folder view, print CurrentView.Xml, and see what changes.
> If you have found how to define the settings you're looking for, you can
> edit the xml property. See also the Apply, and the Save method of the View
> object.

> > Best regards
> Michael Bauer
>

>

> Am Fri, 15 Jan 2010 08:36:01 -0800 schrieb Brad:
>
> > Thansk for your reply Michael.
> > I did a lot of searching on the suggestion you gave me on line, and what I
> > found was this post. I've done a lot of programming in Access and Excel,

> but
> > not Outlook and am not catching on to it that well.
> > Are there some more hints you could give me?
> > Thanks agian,
> > Brad
> > "Michael Bauer " wrote:
> >
> >
> >
> >> See if you can change that via Folder.CurrentView.Xml
> >
> >> > >> Best regards
> >> Michael Bauer
> >>

> >>

> >
> >
> >> Am Fri, 8 Jan 2010 09:06:02 -0800 schrieb Brad:
> >
> >>> Thanks for taking the time to read my question.
> >>
> >>> I'd like to write a macro that when run, changes the sort order of the
> >> mail
> >>> folder I'm in (Inbox or any sub folder) by From, and then Collapses All
> >>> Groups.
> >>
> >>> I've searched the internet and not found what I'm looking for. Can this

> be
> >>> done?
> >>
> >>> Thanks,
> >>
> >>> Brad
> >> .
> >>

> .
>
 
Thanks for the example Ken. It's really helpful.

Have a great day,

Brad
wrote:


> I do this sort of thing all the time in my addins. I usually grab the XML in
> the VBA Immediate window and put it in Notepad for easy editing. I then
> modify the view as desired and use the modified XML file as my base for
> setting up whatever custom view I want.

> For sorting this is the sort of XML you need:

> <orderby
> <order
> <heading>Received</heading
> <prop>urn:schemas:httpmail:datereceived</prop
> <type>datetime</type
> <sort>desc</sort
> </order
> </orderby
> You can have up to 3 sort fields within that <orderby> tag. Properties are
> identified using DASL property tags, so you need to pick those up for your
> view properties. You can also set grouping using tags for that.

> >

>

> "Michael Bauer " <mb@mvps.org> wrote in message
> news:c10qgxsfqcgf.1w2sve9abvdch.dlg@40tude.net...
> > I haven't played with it myself. However, this prints the current view
> > definition into the debug window:
> > Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml
> > I'd play with the folder view, print CurrentView.Xml, and see what
> > changes.
> > If you have found how to define the settings you're looking for, you can
> > edit the xml property. See also the Apply, and the Save method of the View
> > object.
> > > > Best regards
> > Michael Bauer
> >

> >

> >


> .
>
 
Hi Ken,

I found this page

http://msdn.microsoft.com/en-us/library/aa155658(office.10).aspx but I still

don't understand how I apply my XML to the table? How do you tell the MSXML

parser what XML to use?

Thanks agian,

Brad
wrote:


> I do this sort of thing all the time in my addins. I usually grab the XML in
> the VBA Immediate window and put it in Notepad for easy editing. I then
> modify the view as desired and use the modified XML file as my base for
> setting up whatever custom view I want.

> For sorting this is the sort of XML you need:

> <orderby
> <order
> <heading>Received</heading
> <prop>urn:schemas:httpmail:datereceived</prop
> <type>datetime</type
> <sort>desc</sort
> </order
> </orderby
> You can have up to 3 sort fields within that <orderby> tag. Properties are
> identified using DASL property tags, so you need to pick those up for your
> view properties. You can also set grouping using tags for that.

> >

>

> "Michael Bauer " <mb@mvps.org> wrote in message
> news:c10qgxsfqcgf.1w2sve9abvdch.dlg@40tude.net...
> > I haven't played with it myself. However, this prints the current view
> > definition into the debug window:
> > Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml
> > I'd play with the folder view, print CurrentView.Xml, and see what
> > changes.
> > If you have found how to define the settings you're looking for, you can
> > edit the xml property. See also the Apply, and the Save method of the View
> > object.
> > > > Best regards
> > Michael Bauer
> >

> >

> >


> .
>
 
Hi Ken,

Also found this. I made a new view. Am I able to just apply this new view

via VBA?

Thanks,

Brad
wrote:


> I do this sort of thing all the time in my addins. I usually grab the XML in
> the VBA Immediate window and put it in Notepad for easy editing. I then
> modify the view as desired and use the modified XML file as my base for
> setting up whatever custom view I want.

> For sorting this is the sort of XML you need:

> <orderby
> <order
> <heading>Received</heading
> <prop>urn:schemas:httpmail:datereceived</prop
> <type>datetime</type
> <sort>desc</sort
> </order
> </orderby
> You can have up to 3 sort fields within that <orderby> tag. Properties are
> identified using DASL property tags, so you need to pick those up for your
> view properties. You can also set grouping using tags for that.

> >

>

> "Michael Bauer " <mb@mvps.org> wrote in message
> news:c10qgxsfqcgf.1w2sve9abvdch.dlg@40tude.net...
> > I haven't played with it myself. However, this prints the current view
> > definition into the debug window:
> > Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml
> > I'd play with the folder view, print CurrentView.Xml, and see what
> > changes.
> > If you have found how to define the settings you're looking for, you can
> > edit the xml property. See also the Apply, and the Save method of the View
> > object.
> > > > Best regards
> > Michael Bauer
> >

> >

> >


> .
>
 
Ok, came up with a solution.

I make a custom view by:

View>Current View>Define View

and made a new view as I needed.

Then I found this code and made a macro button on my tool bar for the code.

Works like a charm.

Sub ChangeCurrentView()

Dim myOlExp As Outlook.Explorer

Set myOlExp = Application.ActiveExplorer

If myOlExp.CurrentView = "Messages" Then

myOlExp.CurrentView = "Group And Sort"

Else

myOlExp.CurrentView = "Messages"

End If

End Sub

Thanks to everyone on this post for all your help.

Brad
wrote:


> I do this sort of thing all the time in my addins. I usually grab the XML in
> the VBA Immediate window and put it in Notepad for easy editing. I then
> modify the view as desired and use the modified XML file as my base for
> setting up whatever custom view I want.

> For sorting this is the sort of XML you need:

> <orderby
> <order
> <heading>Received</heading
> <prop>urn:schemas:httpmail:datereceived</prop
> <type>datetime</type
> <sort>desc</sort
> </order
> </orderby
> You can have up to 3 sort fields within that <orderby> tag. Properties are
> identified using DASL property tags, so you need to pick those up for your
> view properties. You can also set grouping using tags for that.

> >

>

> "Michael Bauer " <mb@mvps.org> wrote in message
> news:c10qgxsfqcgf.1w2sve9abvdch.dlg@40tude.net...
> > I haven't played with it myself. However, this prints the current view
> > definition into the debug window:
> > Debug.Print Application.ActiveExplorer.CurrentFolder.CurrentView.Xml
> > I'd play with the folder view, print CurrentView.Xml, and see what
> > changes.
> > If you have found how to define the settings you're looking for, you can
> > edit the xml property. See also the Apply, and the Save method of the View
> > object.
> > > > Best regards
> > Michael Bauer
> >

> >

> >


> .
>
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
M Use Macro to change account settings Outlook VBA and Custom Forms 0
N Help creating a VBA macro with conditional formatting to change the font color of all external emails to red Outlook VBA and Custom Forms 5
S Example VBA Macro - To Conditionally Change the From Account and Add a BCC Address on Emails Outlook VBA and Custom Forms 11
Phillip Macro to Change View on All Folders Using Outlook 4
L Change Category in a Task via macro Using Outlook 8
C Macro to change folder of rules automatically Outlook VBA and Custom Forms 7
J Change Subject of 500 mails sitting in Outbox with Macro Using Outlook 6
X Custom icon (not from Office 365) for a macro in Outlook Outlook VBA and Custom Forms 1
X Run macro automatically when a mail appears in the sent folder Using Outlook 5
mrrobski68 Issue with Find messages in a conversation macro Outlook VBA and Custom Forms 1
G Creating Macro to scrape emails from calendar invite body Outlook VBA and Custom Forms 6
J Macro to Reply to Emails w/ Template Outlook VBA and Custom Forms 3
C Outlook - Macro to block senders domain - Macro Fix Outlook VBA and Custom Forms 1
Witzker Outlook 2019 Macro to seach in all contact Folders for marked Email Adress Outlook VBA and Custom Forms 1
S macro error 4605 Outlook VBA and Custom Forms 0
A Macro Mail Alert Using Outlook 4
J Outlook 365 Outlook Macro to Sort emails by column "Received" to view the latest email received Outlook VBA and Custom Forms 0
J Macro to send email as alias Outlook VBA and Custom Forms 0
M Outlook Macro to save as Email with a file name format : Date_Timestamp_Sender initial_Email subject Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro GoTo user defined search folder Outlook VBA and Custom Forms 6
D Outlook 2016 Creating an outlook Macro to select and approve Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to send an Email Template from User Defined Contact Form Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to check Cursor & Focus position Outlook VBA and Custom Forms 8
V Macro to mark email with a Category Outlook VBA and Custom Forms 4
M Outlook 2019 Macro not working Outlook VBA and Custom Forms 0
S Outlook 365 Help me create a Macro to make some received emails into tasks? Outlook VBA and Custom Forms 1
Geldner Send / Receive a particular group via macro or single keypress Using Outlook 1
D Auto Remove [EXTERNAL] from subject - Issue with Macro Using Outlook 21
V Macro to count flagged messages? Using Outlook 2
sophievldn Looking for a macro that moves completed items from subfolders to other subfolder Outlook VBA and Custom Forms 7
S Outlook Macro for [Date][Subject] Using Outlook 1
E Outlook - Macro - send list of Tasks which are not finished Outlook VBA and Custom Forms 3
E Macro to block senders domain Outlook VBA and Custom Forms 1
D VBA Macro to Print and Save email to network location Outlook VBA and Custom Forms 1
N VBA Macro To Save Emails Outlook VBA and Custom Forms 1
N Line to move origEmail to subfolder within a reply macro Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to answer a mail with attachments Outlook VBA and Custom Forms 2
A Outlook 2016 Macro to Reply, ReplyAll, or Forward(but with composing new email) Outlook VBA and Custom Forms 0
J Macro to Insert a Calendar Outlook VBA and Custom Forms 8
W Macro to Filter Based on Latest Email Outlook VBA and Custom Forms 6
T Macro to move reply and original message to folder Outlook VBA and Custom Forms 6
D Autosort macro for items in a view Outlook VBA and Custom Forms 2
S HTML to Plain Text Macro - Help Outlook VBA and Custom Forms 1
A Macro to file emails into subfolder based on subject line Outlook VBA and Custom Forms 1
S Visual indicator of a certain property or to show a macro toggle Outlook VBA and Custom Forms 2
L Modifying VBA script to delay running macro Outlook VBA and Custom Forms 3
S Macro to extract and modify links from emails Outlook VBA and Custom Forms 3
M Replyall macro with template and auto insert receptens Outlook VBA and Custom Forms 1
L Macro to add Date & Time etc to "drag to save" e-mails Outlook VBA and Custom Forms 17
S Macro for Loop through outlook unread emails Outlook VBA and Custom Forms 2

Similar threads

Back
Top