Comment trouver un dossier accidentellement déplacé dans un dossier inconnu dans Outlook? Je peux trouver des messages dans le dossier et regarder leurs propriétés me donne le nom du dossier mais pas son emplacement.
Je voudrais éviter d'avoir à chercher manuellement dans tous les dossiers de la hiérarchie.
Essaye ça:
Ce qui précède n'a pas fonctionné pour Outlook 2007. Les éléments suivants devraient:
De nouveau dans Outlook 2013, cela a changé:
Si vous êtes dans Office 2007 Outlook, cela devrait fonctionner. Aller aux outils. Cliquez sur Nettoyage de la boîte aux lettres. Cliquez ensuite sur Afficher la taille de la boîte aux lettres. Vous obtiendrez une liste de tous vos dossiers et, si vous y travaillez, vous devriez trouver celui qui vous manque - peut-être quelque part d'assez inattendu!
J'ai eu du succès avec cette méthode:
C'était dans Outlook 2010.
voici un script powershell que j'ai écrit, il permet de rechercher un nom de dossier ou de lister l'arborescence complète des dossiers. Utilisation:
sans paramètre, tous les dossiers seront affichés
PS>.\get-MailboxFolders.ps1
└@conserver
└_Licences, codes etc.
└2 Clic
└Axter Ltd
└Chili
└Pérou
si vous passez un paramètre, il recherchera le nom du dossier contenant ce terme et affichera le chemin
PS>.\get-MailboxFolders.ps1 201
The term *201* was found in :
\\[email protected]\2015
\\[email protected]\archivage\2010
\\[email protected]\archivage\2011
vous pouvez rechercher un compte spécifique à l'aide du paramètre mailbox
PS>.\get-MailboxFolders.ps1 -mailbox "infor"
Account selected = ENT, Service Informatique
└Archives
└Boîte de réception
voici le script:
<#
.Synopsis
search Outlook folders or display the folders tree
.Description
This script uses the Outlook COM object.
.Parameter folder
Part of the folder's name to search for. If this parameter is not set the script will output
the complete folders tree
#>
[CmdletBinding()]
param(
[Parameter(Position=0, Mandatory=$false,ValueFromPipeline = $true)]
[System.String]
$folder=$null,
[Parameter(Position=1, Mandatory=$false)]
[System.String]
$mailbox=$null
)
$output=""
$find=@()
function Get-MailboxFolder($folder,$prefix, $search=$null, $firstrun=$false){
if(($search -ne $null) -and ($folder.name -match $search)) {
$script:find+=$folder.folderpath # if foldername match search term add it to the result
}
if($firstrun -eq $true){$script:output=$script:output+"$prefix$($_.name)`n"} # top level directories
if ($folder.folders.count -gt 0 ){ # If there are subfolders
if($firstrun -eq $false){
$script:output=$script:output+"$prefix$($folder.name)`n"
}
$prefix=" "+$prefix # preffix padding
$folder.folders |sort -property name| %{ get-MailboxFolder $_ $prefix $search} #recursivity
}
# No subfolder
if($folder.folders.count -eq 0 -and $firstrun -eq $false){$script:output=$script:output+"$prefix$($folder.name)`n"}
}
# Start Outlook
$o=New-Object -ComObject Outlook.application
$ns=$o.GetNamespace("MAPI")
if($mailbox -ne $null){
$bal=$ns.Folders |?{$_.name -match $mailbox}
}
else{
$bal=$ns.Folders.Item(1) # select the default mail account // you can let $bal=$ns.Folders to search through all accounts
}
write-Host "Account selected = $($bal.name)"
$prefix="└"
$i=1
$bal.folders|sort -property name |%{
$percent=$i*100/($bal.folders.count)
write-progress -activity "Searching, please wait" -currentoperation "$($_.name)" -percentcomplete $percent
get-MailboxFolder $_ $prefix $folder $true
$i++
}
if(($folder -ne $null) -and ($folder -ne "")){ # are we searching ?
if ($find.count -eq 0){write-Host "No folder *$folder* could be found"}
else{write-Host "The term *$folder* was found in : ";$find}
}
else{$script:output} # display tree
$o.quit()
Microsoft n'a pas fourni les outils, j'ai donc écrit un. Gratuit sans prise disponible ici: