Outlookで紛失したフォルダを探すにはどうしたらいいですか?
Outlookで誤って知らないフォルダに移動してしまったフォルダを探すにはどうしたらいいですか?フォルダ内のメッセージを見つけることができますが、そのフォルダのプロパティを見ると、フォルダの名前は出てきますが、どこにあるかはわかりません。
Outlookで誤って知らないフォルダに移動してしまったフォルダを探すにはどうしたらいいですか?フォルダ内のメッセージを見つけることができますが、そのフォルダのプロパティを見ると、フォルダの名前は出てきますが、どこにあるかはわかりません。
試してみてください:
上記はOutlook 2007のために動作しませんでした。次のようにしてください:
私はこの方法で成功しました:
ここに私が書いた powershell のスクリプトは、foldername を捜すか、または完全なホールダーの木をリストすることを可能にしますです。使用法: パラメータなしの
それはすべてのホールダー
PS>.\get-MailboxFolders.ps1
└@conserver
└_Licences, codes etc.
└2 Clic
└Axter Ltd
└Chili
└Pérou
を表示します パラメータを渡せばその言葉を含んでいるホールダーの名前を捜し、パス
PS>.\get-MailboxFolders.ps1 201
The term *201* was found in :
\mailbox@domain.com015
\mailbox@domain.com\archivage010
\mailbox@domain.com\archivage011
``` を出力します
PS>.\get-MailboxFolders.ps1 -mailbox “infor” Account selected = ENT, Service Informatique └Archives └Boîte de réception “`
ここにメールボックス変数 ”` <# .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"}
}
$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() “` を使用して特定のアカウントを捜すことができますスクリプトは次のとおりです: &001
マイクロソフトがツールを提供してくれなかったので書いてみました。ここで利用可能なノーキャッチで無料:&002 [フォルダ名のOutlookを検索する方法]&003
exchange サーバー上で powershell にアクセスできる場合は、次のスクリプトを実行して exchange システム内のすべてのフォルダをダンプすることができます (提供: https://blogs.msdn.microsoft.com/deva/2012/05/10/exchange-powershell-how-to-get-list-of-mailboxes-folders-subfolders-items-in-folder-foldersize-programmatically/ ):
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.* -erroraction SilentlyContinue
$saveto = $env:USERPROFILE + "\OutlookFolderList.csv"
Get-Mailbox | Select-Object alias | foreach-object {Get-MailboxFolderStatistics -Identity $_.alias | select-object Identity, ItemsInFolder, FolderSize} | Export-csv $saveto -NoTypeInformation
特定のユーザーの情報が必要な場合は、次のようなものを使用することができます:
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.* -erroraction SilentlyContinue
$who = $args[0]
$saveto = $env:USERPROFILE + "\OutlookFolderListFor$who.csv"
Get-MailboxFolderStatistics -Identity $who | select-object Identity, ItemsInFolder, FolderSize | Export-csv $saveto -NoTypeInformation
これらの方法は、簡単にスプレッドシートで開いて検索できる CSV ファイルを作成します。