Բաց թողնել հիմնական բովանդակությունը

Ինչպե՞ս գտնել Outlook- ում պանակը (թղթապանակի ամբողջական ուղին) ըստ պանակի անվան:

Օրինակ, Նավիգացիոն պատուհանում դուք տեղափոխում եք մի պանակ և սխալմամբ դուրս եք գալիս անհայտ թղթապանակ Outlook- ում, ցանկանում եք վերականգնել այս պանակը, բայց չեք կարող անմիջապես պարզել այն: Unfortunatelyավոք, Outlook- ը չի աջակցում Գտնել հատկությունը նույնն է, ինչ Microsoft Word- ում կամ Excel- ում: Մի անհանգստացիր! Outlook- ում այս խնդիրը լուծելու համար կարող եք կիրառել VBA մակրո:

Արագ որոնեք և բացեք պանակներն ըստ պանակի անվան ՝ զարմանալի գործիքով

Ընդհանուր առմամբ, մենք կարող ենք որոնել պանակները ըստ թղթապանակի անվան ՝ VBA կոդով: VBA կոդերի մեծ մասը կարող է որոնել պանակները ընթացիկ փոստարկղում և բացել միայն առաջին հայտնաբերված պանակը: Այժմ Kutools- ի Outlook- ի Go To գործառույթով հեշտությամբ կարող եք հեշտությամբ գտնել պանակներ ըստ թղթապանակի անվանման և բացել գտնված թղթապանակներից յուրաքանչյուրին, որքան ձեզ հարկավոր է:



VBA- ի միջոցով գտեք պանակը (պանակի լրիվ ուղին) ըստ պանակի անվան

Խնդրում ենք հետևել ստորև նշված քայլերին `Outlook- ում VBA- ի պանակների անուններով պանակներ որոնելու համար:

1. Մամուլ ալտ + F11 ստեղները միասին ՝ Microsoft Visual Basic հավելվածների համար պատուհանը բացելու համար:

2: Սեղմեք Տեղադրել > Մոդուլներ, ապա VBA կոդի տակ տեղադրեք նոր Մոդուլի պատուհանում:

VBA. Որոնեք և բացեք պանակները 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. Մամուլ F5 ստեղնը կամ սեղմել Վազում այս VBA- ն գործարկելու կոճակը:

4, Փնտրվող որոնման պանակի երկխոսության պատուհանում դուրս գրելով, խնդրում ենք մուտքագրել նշված պանակի անունը, որով դուք փնտրելու եք և կտտացրեք այն OK կոճակ Տեսեք,

ՆշումԱյս VBA- ն աջակցում է աստղանիշի վայրի քարտին: Օրինակ, կարող եք մուտքագրել tes * պարզելու բոլոր թղթապանակները, որոնց անունը սկսվում է tes.

5, Այժմ դուրս է գալիս երկխոսության տուփ և ցույց է տալիս գտնված պանակի պանակի ուղին: Եթե ​​Ձեզ անհրաժեշտ է բացել գտնված պանակը, խնդրում ենք կտտացնել այն այո կոճակը:

Եվ այժմ հայտնաբերված պանակը բացվում է Նավիգացիոն պատուհանում, ինչպես ցույց է տրված ստորև նշված նկարը.

ՆշումԵթե ​​նշված անունով մեկից ավելի պանակներ կան, այս VBA- ն կարող է գտնել և բացել միայն մեկ պանակ:


Searchարմանալի գործիքի միջոցով որոնեք պանակը ըստ պանակի անվան

Եթե ​​տեղադրված եք Kutools Outlook- ի համար, կարող եք կիրառել դրա Գնալ հնարավորությունը ՝ արագորեն պարզելու համար բոլոր պանակները որոշակի պանակի անունով, և հեշտությամբ բացելու ցանկացած գտնված պանակ:

Outlook- ի համար նախատեսված գործիքներSupercharge Outlook-ը 100-ից ավելի պարտադիր գործիքներով: Փորձարկեք այն ԱՆՎՃԱՐ 60 օր, առանց որևէ կապի:   Կարդալ ավելին...   Download Now!

1: Սեղմեք Kutools Plus > Գնալ այս հնարավորությունը միացնելու համար:

2, Գնալ դեպի երկխոսություն, խնդրում ենք մուտքագրել նշված թղթապանակի անունը Որոնել տուփը, որոնման արդյունքներում ընտրեք պանակ և կտտացրեք այն Ok կոճակը:

Այժմ նշված պանակը որոշակի պանակի անունով հայտնաբերվում է և անմիջապես բացվում:


Առնչվող հոդվածներ քանակը:


Գրասենյակի արտադրողականության լավագույն գործիքները

Outlook- ի համար նախատեսված գործիքներ - Ավելի քան 100 հզոր գործառույթ՝ ձեր Outlook-ը լիցքավորելու համար

🤖 AI Փոստի օգնական: Ակնթարթային պրոֆեսիոնալ նամակներ AI մոգությամբ. մեկ սեղմումով հանճարեղ պատասխաններ, կատարյալ հնչերանգներ, բազմալեզու վարպետություն: Փոխակերպեք էլ. փոստը առանց ջանքերի: ...

📧 Email ավտոմատացում: Գրասենյակից դուրս (հասանելի է POP-ի և IMAP-ի համար)  /  Ժամանակացույց ուղարկել նամակներ  /  Ավտոմատ CC/BCC էլփոստ ուղարկելիս կանոններով  /  Ավտոմատ փոխանցում (Ընդլայնված կանոններ)   /  Ավտոմատ ավելացնել ողջույնները   /  Ավտոմատ կերպով բաժանել բազմասերիստացող նամակները առանձին հաղորդագրությունների ...

📨 էլեկտրոնային կառավարման: Հեշտությամբ հիշեք նամակները  /  Արգելափակել խարդախության նամակները ըստ առարկաների և այլոց  /  Deleteնջել կրկնօրինակ նամակները  /  Ընդլայնված որոնում  /  Համախմբել Թղթապանակները ...

📁 Հավելվածներ ProԽմբաքանակի պահպանում  /  Խմբաքանակի անջատում  /  Խմբաքանակային կոմպրես  /  Auto Save- ը   /  Ավտոմատ անջատում  /  Ավտոմատ սեղմում ...

🌟 Ինտերֆեյս Magic: 😊Ավելի գեղեցիկ և զով էմոջիներ   /  Բարձրացրեք ձեր Outlook-ի արտադրողականությունը ներդիրներով դիտումների միջոցով  /  Նվազագույնի հասցնել Outlook-ը փակելու փոխարեն ...

???? Մեկ սեղմումով Հրաշքներ: Պատասխանել բոլորին մուտքային հավելվածներով  /   Հակաֆիշինգի էլ. նամակներ  /  🕘Ցուցադրել ուղարկողի ժամային գոտին ...

👩🏼‍🤝‍👩🏻 Կոնտակտներ և օրացույց: Խմբաքանակի ավելացրեք կոնտակտներ ընտրված էլ  /  Կոնտակտային խումբը բաժանեք առանձին խմբերի  /  Հեռացնել ծննդյան հիշեցումները ...

Over 100 Նկարագրություն Սպասեք ձեր հետազոտությանը: Սեղմեք այստեղ՝ ավելին բացահայտելու համար:

 

 

Comments (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thank you for this great macro. I have used it extensively over the past 2 years. My employer switched from Office 16 to Office 365 and since then, this macro is VERY slow. Is there any way to optimize it for Office 365?
Thanks!
This comment was minimized by the moderator on the site
This macro has really helped me is incredible, thank you!!!
Is it possible to to go to the next occurrence, so instead of just Yes/No have something as Yes/Next/No ?
Thank you
This comment was minimized by the moderator on the site
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
Private StopAtFirstMatch As Boolean

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
' Added "*"... for any given string in the folder name
m_Find = "*" & sName & "*"

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

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

LoopFolders oFolders

If Not m_Folder Is Nothing Then
' Removed - If MsgBox("Activate folder: " & vbCrLf & m_Folder.FolderPath, vbQuestion Or vbYesNo) = vbYes Then
Set Application.ActiveExplorer.CurrentFolder = m_Folder
Else
MsgBox "Search End...", 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
Set Application.ActiveExplorer.CurrentFolder = oFolder

If MsgBox("Found: " & vbCrLf & oFolder.FolderPath & vbCrLf & vbCrLf & "Search for next?", vbQuestion Or vbYesNo) = vbYes Then
bFound = False
End If
Else
MsgBox ("Not found")
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
This comment was minimized by the moderator on the site
Hi, if i try to copy and past the macro yes/next/no, I only received the message "Search End".
Could you take a look? I would really appreciate it. Thanks
This comment was minimized by the moderator on the site
Hi, if i try to copy and past the macro yes/next/no, I only received the message "Search End".Could you take a look? I would really appreciate it. Thanks
This comment was minimized by the moderator on the site
Wow this is exactly. I really appreciate it and you did it so fast.Thanks
This comment was minimized by the moderator on the site
Hello,

Thank you for this macro. It works great!


Is there a way to make the macro always search as wildcards? I would be easier to just type a keyword without adding the asterisks every time.
This comment was minimized by the moderator on the site
Replace Line 18 with

m_Find = "*" & sName & "*"
This comment was minimized by the moderator on the site
Replace Line 18 with
m_Find = "*" & sName & "*"
This comment was minimized by the moderator on the site
Hello.

Wow - this is an amazing function, which will make my daily usage of Outlook tons faster.
Thank you so much for publishing!!

A tip for those interested:
If you want to search only INBOX-folders, without public folders etc.
This made it a lot faster for me because the public folder are remote, so the search is quite slow.
And also I'm not interested in those results.


Replace line 24 with:

Set oFolders = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations