কিছু লোক আশা করে যে আউটলুক নতুন ইমেল আসার সময় পুরানো ইমেলগুলির বিষয়গুলি স্বয়ংক্রিয়ভাবে পরীক্ষা করতে পারে এবং নতুন ইমেলের মতো একই বিষয় থাকলে পুরানো ইমেলগুলির নাম পরিবর্তন বা মুছে ফেলতে পারে৷ এই আউটলুক VBA ব্যবহার করে দাবি. এই নিবন্ধটি আপনাকে এটি অর্জন করতে সাহায্য করবে।
আপনি নিশ্চয়ই অনেক ইমেল পেয়েছেন যাতে একই বিষয় রয়েছে। ইমেল তালিকায় তাদের সনাক্ত করা এবং আলাদা করা কি আপনার জন্য একটু ঝামেলার? অথবা আপনি কি মনে করেন যে সেই পুরানো ইমেলগুলি আপনার জন্য ঠিক অকেজো? যদি তাই হয়, তাহলে আপনাকে অবশ্যই আউটলুককে স্বয়ংক্রিয়ভাবে স্ক্যান করতে দিতে এবং নতুন ইমেল আসার সময় বিদ্যমান সমস্ত ইমেল পরীক্ষা করতে দিতে হবে। যখন ইমেলগুলি নতুনের মতো একই বিষয় থাকে, তখন আউটলুক আপনাকে জিজ্ঞাসা করতে পারে সেগুলির নাম পরিবর্তন করবেন বা মুছবেন কিনা৷ কোন সন্দেহ ছাড়াই, আউটলুক ব্যবহারকারীদের এই ধরনের বৈশিষ্ট্য প্রদান করে না। তাই, আপনাকে ভিবিএ অবলম্বন করতে হবে। এখানে আমরা আপনার কাছে বিস্তারিত কোড এবং ক্রিয়াকলাপগুলি প্রকাশ করব৷
স্বয়ংক্রিয় নাম পরিবর্তন করুন বা পুরানো ইমেলগুলি সরান৷
- প্রথমে, আপনি Outlook চালু করে “Developer” ট্যাবে যেতে পারেন।
- তারপর আপনি "ভিজ্যুয়াল বেসিক" বোতামটি খুঁজে পেতে এবং ক্লিক করতে সক্ষম হবেন।
- এটিকে আঘাত করার পরে, আপনি VBA সম্পাদক উইন্ডোতে প্রবেশ করবেন। এটিতে, আপনাকে "ThisOutlookSession" প্রকল্প খুলতে হবে।
- এরপরে আপনার নীচের ভিবিএ কোডগুলি অনুলিপি করে আটকানো উচিত।
Public WithEvents olItems As Outlook.Items
Sub Application_Startup()
'Specify the Emails in Inbox folder
Set olItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub olItems_ItemAdd(ByVal Item As Object)
Dim i As Long
Dim objVariant As Variant
Dim strMsg As String
Dim nRes As Integer
For i = 1 To olItems.Count
Set objVariant = olItems.Item(i)
If TypeOf objVariant Is MailItem Then
If objVariant.Subject = Item.Subject And objVariant.ReceivedTime < Item.ReceivedTime Then
nDateDiff = DateDiff("d", objVariant.ReceivedTime, Now)
'Add "(Old)" suffix to the email subjects
objVariant.Subject = objVariant.Subject & "(Old)"
objVariant.Save
'If the old emails have been recieved for 60 days, ask you whether to delete
If nDateDiff > 60 Then
strMsg = "There are some older emails whcih have the same subjects with the new email and have been recieved for 2 months. Do you want to delete them?"
nRes = MsgBox(strMsg, vbExclamation + vbYesNo, "Find Older Emails")
If nRes = vbYes Then
objVariant.Delete
End If
End If
End If
End If
Next
End Sub
- পরবর্তীকালে, আপনাকে এই কোডটি ডিজিটালি স্বাক্ষর করতে হবে। "সরঞ্জাম" > "ডিজিটাল স্বাক্ষর" টিপুন। তারপর পপআপ ডায়ালগ বক্সে, আপনি একটি বিদ্যমান শংসাপত্র নির্বাচন করতে পারেন। যদি রেডিমেড শংসাপত্র না থাকে, তাহলে আপনি একটি নতুন তৈরি করতে "VBA প্রকল্পের জন্য ডিজিটাল শংসাপত্র" ব্যবহার করতে পারেন।
- এর পরে, আপনি বর্তমান উইন্ডো থেকে প্রস্থান করতে পারেন এবং ম্যাক্রো সেটিংস পরিবর্তন করতে এগিয়ে যেতে পারেন, শুধুমাত্র ডিজিটালভাবে স্বাক্ষরিত ম্যাক্রোগুলিকে অনুমতি দিয়ে৷
- অবশেষে, নতুন ম্যাক্রোটি সক্রিয় করতে আপনি আউটলুক পুনরায় চালু করতে পারেন। এখন থেকে, ইনবক্সে নতুন ইমেল এলে আউটলুক স্বয়ংক্রিয়ভাবে আগের সমস্ত ইমেল চেক করবে।
- যদি পুরানো ইমেলগুলির নতুনের মতো একই বিষয় থাকে, তবে আউটলুক স্বয়ংক্রিয়ভাবে ইমেল বিষয়ের সাথে "(পুরাতন)" প্রত্যয় যুক্ত করবে।
- এবং যদি পুরানো ইমেলগুলি 2 মাসেরও বেশি সময় ধরে ইনবক্সে সংরক্ষণ করা হয়, তাহলে আপনি একটি প্রম্পট পাবেন, নীচের ছবির মতো সেগুলি মুছতে চান কিনা তা জিজ্ঞাসা করা হবে৷ আপনি আপনার নিজের প্রয়োজনের উপর ভিত্তি করে "হ্যাঁ" বা "না" নির্বাচন করতে পারেন।
বড় আকারের কারণে আউটলুক ফাইল দুর্নীতি
কিছু লোকের আউটলুকে নিয়মিত পুরোনো আইটেম মুছে ফেলার অভ্যাস নেই। ফলে তাদের আউটলুক ফাইলের আকার অনেক বড় হয়ে যায়, যা একেবারেই কাম্য নয়। এর কারণ হলো, ছোট আকারের ফাইলের তুলনায় একটি বড় আকারের আউটলুক ফাইল অনেক বেশি ঝুঁকিপূর্ণ। ফাইলটি একবার নষ্ট হয়ে গেলে, এর অন্তর্নির্মিত মেরামতকারী টুল, Scanpst.exe, বেশিরভাগ ক্ষেত্রেই অকার্যকর হয়ে পড়ে। এক্ষেত্রে আপনার একমাত্র উপায় হতে পারে একটি অসাধারণ এবং পরীক্ষিত পদ্ধতি। দূষিত Outlook PST মেরামতের টুল, ভালো মত DataNumen Outlook Repair.
লেখকের ভূমিকা:
শিরলে জাং একটি ডেটা রিকভারি বিশেষজ্ঞ DataNumen, ইনক। যা তথ্য পুনরুদ্ধারের প্রযুক্তিগুলির সহ বিশ্বের শীর্ষস্থানীয় মেরামত দূষিত SQL Server এমডিএফ ডাটাবেস এবং আউটলুক মেরামত সফ্টওয়্যার পণ্য। আরো তথ্যের জন্য, যান WWW.datanumen.com


