Note: The other languages of the website are Google-translated. Back to English

Come trovare la cartella (percorso completo della cartella) in base al nome della cartella in Outlook?

Ad esempio, nel riquadro di navigazione si sposta una cartella e la si rilascia per errore in una cartella sconosciuta in Outlook, si desidera ripristinare questa cartella ma non è possibile scoprirla immediatamente. Sfortunatamente, Outlook non supporta l'estensione Trova funzionalità uguale a quella in Microsoft Word o Excel. Non preoccuparti! È possibile applicare una macro VBA per risolvere questo problema in Outlook.

Cerca e apri rapidamente le cartelle in base al nome della cartella con uno strumento straordinario

In generale, possiamo cercare le cartelle in base al nome della cartella con il codice VBA. La maggior parte del codice VBA può cercare nelle cartelle nella cassetta postale corrente e aprire solo la prima cartella trovata. Ora con la funzione Vai a di Kutools per Outlook, puoi trovare facilmente le cartelle in base al nome della cartella e aprire tutte le cartelle trovate di cui hai bisogno.



Trova la cartella (percorso completo della cartella) in base al nome della cartella con VBA

Seguire i passaggi seguenti per cercare le cartelle in base ai nomi delle cartelle con VBA in Outlook.

1. stampa altro + F11 tasti insieme per aprire la finestra di Microsoft Visual Basic, Applications Edition.

2. Clic inserire > Modulo, quindi incolla sotto il codice VBA nella nuova finestra del modulo.

VBA: cerca e apri le cartelle in base al nome della cartella in Outlook

Private m_Folder As MAPIFolder
Private m_Find As String
Private m_Wildcard As Boolean

Private Const SpeedUp As Boolean = True
Private Const StopAtFirstMatch As Boolean = True

Public Sub FindFolder()
Dim sName As String
Dim oFolders As Folders

  Set m_Folder = Nothing
m_Find = ""
m_Wildcard = False

  sName = InputBox("Find:", "Search folder")
If Len(Trim(sName)) = 0 Then Exit Sub
m_Find = sName

  m_Find = LCase(m_Find)
m_Find = Replace(m_Find, "%", "*")
m_Wildcard = (InStr(m_Find, "*"))

  Set oFolders = Application.Session.Folders
LoopFolders oFolders

  If Not m_Folder Is Nothing Then
If MsgBox("Activate folder: " & vbCrLf & m_Folder.FolderPath, vbQuestion Or vbYesNo) = vbYes Then
Set Application.ActiveExplorer.CurrentFolder = m_Folder
End If
Else
MsgBox "Not found", vbInformation
End If
End Sub

Private Sub LoopFolders(Folders As Outlook.Folders)
Dim oFolder As MAPIFolder
Dim bFound As Boolean

If SpeedUp = False Then DoEvents

  For Each oFolder In Folders
If m_Wildcard Then
bFound = (LCase(oFolder.Name) Like m_Find)
Else
bFound = (LCase(oFolder.Name) = m_Find)
End If

    If bFound Then
If StopAtFirstMatch = False Then
If MsgBox("Found: " & vbCrLf & oFolder.FolderPath & vbCrLf & vbCrLf & "Continue?", vbQuestion Or vbYesNo) = vbYes Then
bFound = False
End If
End If
End If
If bFound Then
Set m_Folder = oFolder
Exit For
Else
LoopFolders oFolder.Folders
If Not m_Folder Is Nothing Then Exit For
End If
Next
End Sub

3. stampa F5 o fare clic su Correre pulsante per eseguire questo VBA.

4. Nella finestra di dialogo della cartella di ricerca che si apre, digitare il nome della cartella specificato in base a cui si cercherà e fare clic su OK pulsante. Vedi screenshot:

Note:: Questo VBA supporta il carattere jolly asterisco. Ad esempio, puoi digitare tes * per scoprire tutte le cartelle il cui nome inizia con tes.

5. Ora viene visualizzata una finestra di dialogo che mostra il percorso della cartella della cartella trovata. Se è necessario aprire la cartella trovata, fare clic su pulsante.

E ora la cartella trovata si apre nel pannello di navigazione come mostrato nell'immagine sottostante:

Note:: Se sono presenti più cartelle denominate con il nome specificato, questo VBA può trovare e aprire solo una cartella.


Cerca la cartella per nome della cartella con uno strumento straordinario

Se hai installato Kutools per Outlook, puoi applicare la sua funzione Vai a per trovare rapidamente tutte le cartelle con un determinato nome di cartella e aprire facilmente anche le cartelle trovate.

Kutools per Outlook: Aggiungi più di

100
pratici strumenti per Outlook, da provare gratuitamente senza limiti in 60 giorni. Continua a leggere...      Prova gratuita ora

1. Clic Kutools Plus > Vai per attivare questa funzionalità.

2. Nella finestra di dialogo Vai a, digitare il nome della cartella specificato nel file Cerca casella, selezionare una cartella nei risultati della ricerca e fare clic su Ok pulsante.

Ora la cartella specificata con un determinato nome di cartella viene trovata e aperta immediatamente.


Articoli correlati:


Kutools for Outlook: porta 100 funzionalità avanzate in Outlook e semplifica notevolmente il lavoro!

  • Auto CC / BCC dalle regole durante l'invio di e-mail; Avanzamento automatico Email multiple personalizzate; Risposta automatica senza server di scambio e più funzioni automatiche ...
  • Avviso BCC - mostra il messaggio quando provi a rispondere a tutti se il tuo indirizzo e-mail è nell'elenco BCC; Ricorda quando mancano allegatie altre funzioni di promemoria ...
  • Rispondi (tutti) con tutti gli allegati nella conversazione di posta; Rispondi a molte email in secondi; Aggiunta automatica di saluto quando rispondi; Aggiungi la data all'oggetto ...
  • Strumenti per gli allegati: gestisci tutti gli allegati in tutti i messaggi, Scollegamento automatico, Comprimi tutto, Rinomina tutto, Salva tutto... Rapporto rapido, Conta le email selezionate...
  • E-mail spazzatura potenti per abitudine; Rimuovi messaggi e contatti duplicati... Consentono di fare in modo più intelligente, veloce e migliore in Outlook.
girato kutools outlook scheda kutools 1180x121
girato kutools outlook kutools plus tab 1180x121
 
Commenti (9)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao.

Wow: questa è una funzione straordinaria, che renderà il mio utilizzo quotidiano di Outlook più veloce.
Grazie mille per la pubblicazione!!

Un consiglio per chi fosse interessato:
Se vuoi cercare solo nelle cartelle INBOX, senza cartelle pubbliche ecc.
Questo lo ha reso molto più veloce per me perché la cartella pubblica è remota, quindi la ricerca è piuttosto lenta.
E inoltre non mi interessano quei risultati.


Sostituisci la riga 24 con:

Imposta oFolders = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders
Questo commento è stato fatto dal moderatore sul sito
Ciao,

Grazie per questa macro. Funziona benissimo!


C'è un modo per fare in modo che la macro cerchi sempre come caratteri jolly? Sarebbe più semplice digitare una parola chiave senza aggiungere gli asterischi ogni volta.
Questo commento è stato fatto dal moderatore sul sito
Sostituisci la riga 18 con
m_Trova = "*" & sNome & "*"
Questo commento è stato fatto dal moderatore sul sito
Sostituisci la riga 18 con

m_Trova = "*" & sNome & "*"
Questo commento è stato fatto dal moderatore sul sito
Questa macro mi ha davvero aiutato è incredibile, grazie!!!
È possibile passare all'occorrenza successiva, quindi invece di solo Sì/No avere qualcosa come Sì/Avanti/No ?
Grazie
Questo commento è stato fatto dal moderatore sul sito
m_cartella privata come cartella MAPI
Privato m_Trova come stringa
Private m_Wildcard come booleano

Private Const SpeedUp As Boolean = True
'Const privato StopAtFirstMatch As Boolean = True
StopAtFirstMatch privato come booleano

Trovacartella secondaria pubblica()
Dim sName As String
Dim oFolders come cartelle

Imposta m_Cartella = Niente
m_Trova = ""
m_Carattere jolly = Falso

sName = InputBox("Trova:", "Cerca cartella")
Se Len(Trim(sName)) = 0 Quindi Esci da Sub

'm_Trova = sNome
' Aggiunto "*"... per qualsiasi stringa nel nome della cartella
m_Trova = "*" & sNome & "*"

m_Trova = LCase(m_Trova)
m_Trova = Sostituisci(m_Trova, "%", "*")
m_Jolly = (InStr(m_Find, "*"))

' Imposta oFolders = Application.Session.Folders
Imposta oFolders = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders

LoopFolders oFolders

Se non m_Folder non è niente allora
' Rimosso - Se MsgBox("Attiva cartella: " & vbCrLf & m_Folder.FolderPath, vbQuestion o vbYesNo) = vbYes Allora
Imposta Application.ActiveExplorer.CurrentFolder = m_Folder
Altro
MsgBox "Fine ricerca...", vbInformation
End If
End Sub

Private Sub LoopFolders (cartelle come Outlook.Folders)
Dim oFolder As MAPIFolder
Dim bTrovato come booleano

Se SpeedUp = False allora DoEvents

Per ogni cartella nelle cartelle
Se m_Wildcard Allora
bTrovato = (LCase(oFolder.Name) Like m_Find)
Altro
bTrovato = (Casella(oCartella.Nome) = m_Trova)
End If


Se bTrovato Allora
Se StopAtFirstMatch = False allora
Imposta Application.ActiveExplorer.CurrentFolder = oFolder

If MsgBox("Trovato: " & vbCrLf & oFolder.FolderPath & vbCrLf & vbCrLf & "Cerca il prossimo?", vbQuestion Or vbYesNo) = vbYes Allora
bTrovato = Falso
End If
Altro
MsgBox ("Non trovato")
End If
End If
Se bTrovato Allora
Imposta m_Cartella = oCartella
Esci per
Altro
LoopFolders oFolder.Folders
Se non m_Folder non è niente, allora esci per
End If
Successiva
End Sub
Questo commento è stato fatto dal moderatore sul sito
Wow, questo è esattamente. Lo apprezzo davvero e l'hai fatto così velocemente. Grazie
Questo commento è stato fatto dal moderatore sul sito
Ciao, se provo a copiare e incollare la macro yes/next/no, ho ricevuto solo il messaggio "Search End". Potresti dare un'occhiata? Lo apprezzerei molto. Grazie
Questo commento è stato fatto dal moderatore sul sito
Ciao, se provo a copiare e incollare la macro yes/next/no, ho ricevuto solo il messaggio "Search End".
Potresti dare un'occhiata? Lo apprezzerei molto. Grazie
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL