我有 Outlook 2013,侧面有许多文件夹,里面存放着我的所有联系人和他们发来的供应商电子邮件。我希望能够快速找到文件夹,而不必逐个浏览。有人能帮我吗?
答案1
Outlook 不提供直接搜索文件夹的功能。不过,超级用户的另一个问题中讨论了解决方法:如何在 Outlook 中查找丢失的文件夹?。用户 Loïc MICHEL 创建了一些自定义脚本来帮助搜索文件夹
外部网站 (thetechieguy.com) 也创建了一个带有详细说明的解决方案 如何在 Outlook 中搜索文件夹名称
希望这可以帮助
答案2
- SHIFT按+将焦点设置到导航窗格中的活动文件夹F6 (根据您当前的焦点,您可能需要多次按此键)
- 将焦点放在导航窗格内后,键入文件夹名称的前几个字母即可选择它。
- 您的当前文件夹仍为活动文件夹,因此您可以轻松地将邮件从该文件夹移动到其他文件夹。
注意:只会找到当前可见/展开的文件夹。不会找到折叠的子文件夹。另请参阅 启动 Outlook 时所有文件夹均处于折叠/展开状态。
如果你不想让文件夹保持展开状态,而只想通过输入名称来打开特定文件夹,那么这个VBOffice 中的 VBA 宏就可以了。
Private m_Folder As Outlook.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 Name$
Dim Folders As Outlook.Folders
Set m_Folder = Nothing
m_Find = ""
m_Wildcard = False
Name = InputBox("Find name:", "Search folder")
If Len(Trim$(Name)) = 0 Then Exit Sub
m_Find = Name
m_Find = LCase$(m_Find)
m_Find = Replace(m_Find, "%", "*")
m_Wildcard = (InStr(m_Find, "*"))
Set Folders = Application.Session.Folders
LoopFolders Folders
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 F As Outlook.MAPIFolder
Dim Found As Boolean
If SpeedUp = False Then DoEvents
For Each F In Folders
If m_Wildcard Then
Found = (LCase$(F.Name) Like m_Find)
Else
Found = (LCase$(F.Name) = m_Find)
End If
If Found Then
If StopAtFirstMatch = False Then
If MsgBox("Found: " & vbCrLf & F.FolderPath & vbCRLF & vbCrLf & "Continue?", vbQuestion Or vbYesNo) = vbYes Then
Found = False
End If
End If
End If
If Found Then
Set m_Folder = F
Exit For
Else
LoopFolders F.Folders
If Not m_Folder Is Nothing Then Exit For
End If
Next
End Sub
答案3
快捷文件夹插件就是这样做的。这是我公司开发的商业产品,但您可以使用免费试用版根据需要查找文件夹。