1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| Sub LireMessagesDUnDossierEtLeDeplacerVersUnAutre2()
'Réf.test macro2.xlsm
Dim olApp As Object, NS As Object, Dossier As Object
Dim DossierDest As Object, DossierCible As Object
Dim i As Object, x As Long, R As Object, Ligne As Long
Set olApp = CreateObject("Outlook.Application")
Set NS = olApp.GetNamespace("MAPI")
Set DossierSource = NS.Folders(1).Folders("Boîte de réception").Folders("essai")
Set DossierDest = NS.Folders(1).Folders("Boîte de réception").Folders("traiter")
With Sheets("Sheet1")
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row
Do
If DossierSource.Items.Count = 0 Then Exit Sub
Ligne = Ligne + 1
.Cells(Ligne, 1) = DossierSource.Items(1).sendername
.Cells(Ligne, 3) = DossierSource.Items(1).Subject
.Cells(Ligne, 4) = DossierSource.Items(1).ReceivedTime
' For x = 0 To UBound(Split(i.Body, vbCrLf))
' Ligne = Ligne + 1
' .Cells(Ligne, 3) = Split(i.Body, vbCrLf)(x)
' Next x
'.range(.[A2],.cells(ligne+1,3)).
.Columns(3).AutoFit
'sauvegarde du message sous forme de fichier. Possibilité de mettre un lien hypertexte pour l'ouvrir dans Outlook
'i.SaveAs "c:temp\" & Format(i.CreationTime, "yyyy-mm-dd hh""h""mm") & " - " & i.Subject & ".msg", olMSG
DossierSource.Items(1).Move DossierDest
Loop
End With
Set NS = Nothing
Set olApp = Nothing
End Sub |
Partager