首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >powershell可将所有outlook收件箱电子邮件导出到Excel文件

powershell可将所有outlook收件箱电子邮件导出到Excel文件
EN

Stack Overflow用户
提问于 2016-10-26 21:33:15
回答 1查看 5.4K关注 0票数 1

我正在编写一个powershell脚本,以便将所有outlook-2013收件箱内容导出到excel工作表。我尝试了许多代码,但我得到了错误或不相关的输出。请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2016-10-28 00:49:10

感谢您发布您的代码,因为这使我能够帮助您。通过将最后一行改为$folders.items | Get-Member,这将列出我看不到SenderAddress但看到SenderEmailAddress的所有可用属性。

其次,您需要可以在Outlook中打开并包含完整详细信息的输出。使用Out-File对最后一行进行管道连接将发送格式化为字符串表的数据。因此,让我们使用Excel将其导出为可以在Export-CSV中打开的格式。(请注意,如果您愿意,可以使用一些Excel Modules将其直接传输到xlsx。

两个小插曲。您仍然需要将XXXX/trial.csv替换为您希望保存此文件的位置。请注意,当您运行此命令时,您的PowerShell会话提升状态与Outlook匹配。如果将PowerShell提升为管理员身份/以管理员身份运行,而Outlook不是,则它将无法工作。

代码语言:javascript
复制
Function Get-OutlookInBox { 
    Add-Type -AssemblyName "Microsoft.Office.Interop.Outlook" | out-null 
    $olFolders = "Microsoft.Office.Interop.Outlook.olDefaultFolders" -as [type]
    $Outlook = New-Object -ComObject Outlook.Application
    $Namespace = $Outlook.GetNameSpace("MAPI")
    $Folder = $Namespace.GetDefaultFolder($olFolders::olFolderInBox) 
    $Folder.Items | Select-Object -Property Subject, ReceivedTime, SenderName, SenderEmailAddress | Export-CSV -NoTypeInformation XXXX\Trial.csv 
} 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40263725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档