outlook-vba 3.3 Riferimento a qualsiasi cartella all'interno di qualsiasi negozio accessibile


Esempio

TestFldrChain() dimostra come fare riferimento a qualsiasi cartella all'interno di qualsiasi archivio accessibile:

Sub TestFldrChain()

  Dim Fldr As Folder

  Set Fldr = Session.Folders("A").Folders("A2"). _
                           Folders("A21").Folders("A213")

  Debug.Print Join(GetFldrNames(Fldr), "|")

End Sub    

In TestFldrChain() : A è il nome di un negozio; A2 è il nome di una cartella all'interno di A; A21 è il nome di una cartella all'interno di A2 e A213 è il nome di una cartella all'interno di A21.

Cosa sta succedendo qui?

Session ha una proprietà Folders che è una lista di tutti i negozi accessibili.

Session.Folders(integer) , che ho utilizzato nella parte 2 di questo tutorial, mi consente di scorrere i negozi in sequenza quando non conosco i loro nomi. Session.Folders("A") mi consente di accedere a una cartella quando conosco il suo nome.

Session.Folders("A") è una cartella e anch'essa ha una proprietà Folders .

Session.Folders("A").Folders("A2") mi danno accesso alla cartella "A2" nel negozio "A".

Posso incatenare tante Folders("x") se necessario per raggiungere qualsiasi cartella. Se la catena è troppo lunga per una linea, puoi dividere l'istruzione su più righe come ho fatto io.

Cerca la cartella più profondamente annidata all'interno dell'installazione e sostituisci A, A2, A21 e A213 con i nomi del tuo negozio e delle tue cartelle. Aumentare o diminuire il numero di cartelle nella catena secondo necessità.

Se aggiorni ed esegui TestFldrChain() , verrà TestFldrChain() quanto segue ad eccezione del fatto che A, A2 e così via saranno stati sostituiti dai nomi delle tue cartelle:

A|A2|A21|A213