1

I'm trying to convert an email to task and place that task inside a shared task folder. My co-worker shared the folder and has given me owner access to the folder as well.

We have utilized the script on slipstick to accomplish this. This code does work for my co-worker, but does not work for me.

When I dig into the list of folders I see my personal task list as a folder and not the shared folder. (Via the code below)

Is there any way that I can add a task to a shared task folder?

Public strFolders As String
     
Public Sub GetFolderNames()
    Dim olApp As Outlook.Application
    Dim olSession As Outlook.NameSpace
    Dim olStartFolder As Outlook.MAPIFolder
    Dim lCountOfFound As Long
     
    lCountOfFound = 0
          
    Set olApp = New Outlook.Application
    Set olSession = olApp.GetNamespace("MAPI")
          
    ' Allow the user to pick the folder in which to start the search.
    Set olStartFolder = olSession.PickFolder
          
    ' Check to make sure user didn't cancel PickFolder dialog.
    If Not (olStartFolder Is Nothing) Then
        ' Start the search process.
        ProcessFolder olStartFolder
    End If
         
    ' Create a new mail message with the folder list inserted
    Set ListFolders = Application.CreateItem(olMailItem)
    ListFolders.Body = strFolders
    ListFolders.Display
          
    ' clear the string so you can run it on another folder
    strFolders = ""
End Sub
      
Sub ProcessFolder(CurrentFolder As Outlook.MAPIFolder)
             
    Dim i As Long
    Dim olNewFolder As Outlook.MAPIFolder
    Dim olTempFolder As Outlook.MAPIFolder
    Dim olTempFolderPath As String
    ' Loop through the items in the current folder.
    For i = CurrentFolder.Folders.Count To 1 Step -1
    
        Set olTempFolder = CurrentFolder.Folders(i)
              
        olTempFolderPath = olTempFolder.FolderPath
    
        ' Get the count of items in the folder
        olCount = olTempFolder.Items.Count
    
        'prints the folder path and name in the VB Editor's Immediate window
        Debug.Print olTempFolderPath & " " & olCount
               
        ' prints the folder name only
        ' Debug.Print olTempFolder
              
        ' create a string with the folder names.
        ' use olTempFolder if you want foldernames only
        strFolders = strFolders & vbCrLf & olTempFolderPath & " " & olCount
             
        lCountOfFound = lCountOfFound + 1
              
    Next
    ' Loop through and search each subfolder of the current folder.
    For Each olNewFolder In CurrentFolder.Folders
              
        'Don't need to process the Deleted Items folder
        If olNewFolder.Name <> "Deleted Items" Then
            ProcessFolder olNewFolder
        End If
              
    Next
          
End Sub
Community
  • 1
  • 1
JohnFayt
  • 107
  • 3
  • 10

1 Answers1

1

In addition the Task folder, you will need permission to your co-worker's Mailbox. (Not Inbox nor other folders.)

If you add the mailbox to your profile, see the accepted answer here.

If you do not add the mailbox to your profile, see the answer describing GetSharedDefaultFolder. Redemption is not required.

Community
  • 1
  • 1
niton
  • 8,771
  • 21
  • 32
  • 52