DOMANDA Macro per contare le mail in Outlook

Volt001

Utente Attivo
272
81
Hardware Utente
CPU
I7 4790S
Salve a tutti,

Avrei necessità di creare una macro per contare quante email sono arrivate in una determinata data in una casella di posta elettronica; cercando un pò in giro ho trovato una funzione (che ho leggermente riadattato) che fa esattamente quanto sopra, ma con un piccolo fastidioso particolare: lo fa SOLO per la casella su cui sono posizionato all'avvio della macro

Sub Countemailsperday()
Dim objOutlook As Object, objnSpace As Object, objFolder As Outlook.MAPIFolder
Dim EmailCount As Integer
Dim oDate As String

oDate = InputBox("Scrivi una data per il conteggio (formato GG/MM/AAAA)")
Set objOutlook = CreateObject("Outlook.Application")
Set objnSpace = objOutlook.GetNamespace("MAPI")
On Error Resume Next
Set objFolder = Application.ActiveExplorer.CurrentFolder

'Set objList = Application.ActiveExplorer.AccountSelector

'MsgBox objList

'objFolder.Items.

'Set objFolder = Application.Explorer.CurrentView
If Err.Number <> 0 Then
Err.Clear
MsgBox "Nessuna cartella."
Exit Sub
End If
EmailCount = objFolder.Items.Count
MsgBox "Numero di e-mail nella cartella: " & EmailCount, , "email count"
Dim ssitem As MailItem
Dim dateStr As String
Dim myItems As Outlook.Items
Dim dict As Object
Dim msg As String
Set dict = CreateObject("Scripting.Dictionary")
Set myItems = objFolder.Items
myItems.SetColumns ("ReceivedTime")
' Determine date of each message:
For Each myItem In myItems
dateStr = GetDate(myItem.ReceivedTime)
If dateStr = oDate Then
If Not dict.Exists(dateStr) Then
dict(dateStr) = 0
End If
dict(dateStr) = CLng(dict(dateStr)) + 1
End If
Next myItem
' Output counts per day:
msg = ""
For Each o In dict.Keys
msg = msg & o & ": " & dict(o) & " e-mail ricevute" & vbCrLf
Next
MsgBox msg
Set objFolder = Nothing
Set objnSpace = Nothing
Set objOutlook = Nothing
End Sub
Function GetDate(dt As Date) As String
GetDate = Day(dt) & "/" & Month(dt) & "/" & Year(dt)
End Function



Qualcuno sa come poter fare perchè mi legga anche le sottocartelle? O per poter fornire già un elenco di cartelle/sottocartelle da leggere senza doverla girare su ogni cartella ogni volta?

Grazie
 

Entra

oppure Accedi utilizzando