Solved

transfer categories from outlook 2003 to 2007

Posted on 2009-05-12
4
509 Views
Last Modified: 2013-11-29
I wonder if anyone can suggest a way of copying the categories from Outlook 2003 on one machine to Outlook 2007 on another.
Microsdoft have an article
http://support.microsoft.com/default.aspx?scid=kb;en-us;297405
which explains how to do it in 2003 to 2003 but that is all I can find.


0
Comment
Question by:MsElfin
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 
LVL 76

Expert Comment

by:David Lee
ID: 24365818
Hi, MsElfin.

Outlook 2003 stores categories in the registry.  Outlook 2007 stores them in a hidden folder in Outlook.  There is no built in means of copying them from 2003 to 2007.  It is possible to do it if you are comfortable scripting in Outlook.
0
 

Author Comment

by:MsElfin
ID: 24484834
Hi BlueDevilFan

Thanks your message.  How does one access the hidden folder in Outlook 2007?  Then I can look at scripting.

Thanks
0
 
LVL 76

Accepted Solution

by:
David Lee earned 50 total points
ID: 24487754
You don't need to access the hidden folder directly.  Outlook 2007's object model includes everything you need to do it from code.  Here's an example of how to add categories in Outlook 2007.
Sub CompanyCategories()
    Const CATNAMES = "CatA,CatB"
    Const CATCOLORS = "2,3"
    Dim olkApp, olkSes, olkCats, olkCat, arrCats, varCat, arrColors, varColor, intIndex
    Set olkApp = CreateObject("Outlook.Application")
    Set olkSes = olkApp.GetNamespace("MAPI")
    olkSes.Logon "Outlook"
    Set olkCats = olkSes.Categories
    arrCats = Split(CATNAMES, ",")
    arrColors = Split(CATCOLORS, ",")
    For intIndex = LBound(arrCats) To UBound(arrCats)
        varCat = arrCats(intIndex)
        varColor = arrColors(intIndex)
        Set olkCat = olkCats.Item(varCat)
        If TypeName(olkCat) = "Nothing" Then
            Set olkCat = olkCats.Add(varCat, varColor)
        Else
            If olkCat.Color <> varColor Then
                olkCat.Color = varColor
            End If
        End If
    Next
    Set olkCat = Nothing
    Set olkCats = Nothing
    olkSes.Logoff
    Set olkSes = Nothing
    Set olkApp = Nothing
End Sub

Open in new window

0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
In this step by step procedure, you will come to know the details of creating an Outlook meeting in 2007, 2010, 2013 & 2016.
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question