কম্পিউটার

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

মাইক্রোসফ্ট এক্সেল থেকে ইমেল পাঠাতে শুধুমাত্র কয়েকটি সহজ স্ক্রিপ্ট প্রয়োজন। আপনার স্প্রেডশীটে এই কার্যকারিতা যোগ করুন এবং আপনি Excel এ কতটা অর্জন করতে পারেন তা সত্যিই উন্নত করতে পারেন৷

আমরা অনেকগুলি দুর্দান্ত এক্সেল ম্যাক্রো কভার করেছি, যা VBA স্ক্রিপ্টগুলি যা করতে পারে একই জিনিসগুলি সম্পাদন করতে পারে, কিন্তু প্রোগ্রামিং জ্ঞানের প্রয়োজন ছাড়াই৷ কিন্তু এমন অনেক উন্নত জিনিস আছে যা আপনি শুধুমাত্র VBA দিয়েই করতে পারেন, যেমন আপনার পিসির সমস্ত তথ্য দিয়ে একটি স্প্রেডশীট রিপোর্ট তৈরি করা৷

ভিডিও হিসেবে এই টিউটোরিয়ালটি দেখতে চান? আমরা আপনাকে কভার করেছি!

কেন এক্সেল থেকে ইমেল পাঠাবেন?

মাইক্রোসফ্ট এক্সেলের ভিতর থেকে আপনি একটি ইমেল পাঠাতে চাইতে পারেন এমন অনেক কারণ রয়েছে৷

হতে পারে আপনার এমন কর্মী আছে যারা সাপ্তাহিক ভিত্তিতে দস্তাবেজ বা স্প্রেডশীট আপডেট করে, এবং আপনি সেই আপডেটগুলি কখন সম্পন্ন হবে তার একটি ইমেল বিজ্ঞপ্তি পেতে চান। অথবা আপনার কাছে পরিচিতির একটি স্প্রেডশীট থাকতে পারে এবং আপনি একবারে তাদের সবাইকে একটি ইমেল পাঠাতে চান৷

আপনি সম্ভবত ভাবছেন যে এক্সেল থেকে একটি ইমেল সম্প্রচার স্ক্রিপ্ট করা জটিল হতে চলেছে। ব্যাপারটা মোটেও তা নয়।

এই নিবন্ধের কৌশলটি এমন একটি বৈশিষ্ট্য ব্যবহার করবে যা এক্সেল VBA-তে দীর্ঘদিন ধরে উপলব্ধ, সহযোগিতা ডেটা অবজেক্টস (সিডিও)।

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

সিডিও হল একটি মেসেজিং কম্পোনেন্ট যা OS-এর প্রথম প্রজন্ম থেকে উইন্ডোজে ব্যবহৃত হয়। এটিকে CDONTS বলা হত, এবং তারপরে Windows 2000 এবং XP-এর আবির্ভাবের সাথে, "Windows 2000 এর জন্য CDO" দিয়ে প্রতিস্থাপিত হয়েছিল। এই উপাদানটি ইতিমধ্যেই Microsoft Word বা Excel এর মধ্যে আপনার VBA ইনস্টলেশনে অন্তর্ভুক্ত করা হয়েছে এবং ব্যবহারের জন্য প্রস্তুত৷

কম্পোনেন্ট ব্যবহার করে উইন্ডোজ প্রোডাক্টের ভিবিএ থেকে ইমেল পাঠানো অত্যন্ত সহজ করে তোলে। এই উদাহরণে, আপনি একটি ইমেল পাঠাতে Excel-এ CDO উপাদান ব্যবহার করবেন যা একটি নির্দিষ্ট Excel সেল থেকে ফলাফল প্রদান করবে।

ধাপ 1:একটি VBA ম্যাক্রো তৈরি করুন

প্রথম ধাপ হল এক্সেল ডেভেলপার ট্যাবে যাওয়া।

বিকাশকারী ট্যাবের ভিতরে, ঢোকান-এ ক্লিক করুন কন্ট্রোল বাক্সে, এবং তারপর একটি কমান্ড বোতাম নির্বাচন করুন।

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

এটিকে শীটে আঁকুন এবং তারপর ম্যাক্রো-এ ক্লিক করে এটির জন্য একটি নতুন ম্যাক্রো তৈরি করুন বিকাশকারী ফিতায়৷

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

আপনি যখন তৈরি করুন ক্লিক করুন৷ বোতাম, এটি VBA সম্পাদক খুলবে৷

Tools-এ নেভিগেট করে CDO লাইব্রেরিতে রেফারেন্স যোগ করুন> রেফারেন্স সম্পাদকে।

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

আপনি Windows 2000 লাইব্রেরির জন্য মাইক্রোসফ্ট CDO না পাওয়া পর্যন্ত তালিকাটি স্ক্রোল করুন . চেকবক্স চিহ্নিত করুন এবং ঠিক আছে ক্লিক করুন .

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

আপনি যখন ঠিক আছে ক্লিক করুন , যেখানে আপনি স্ক্রিপ্ট পেস্ট করছেন সেই ফাংশনের নামটি নোট করুন। আপনার এটি পরে প্রয়োজন হবে৷

ধাপ 2:CDO "থেকে" এবং "থেকে" ফিল্ড সেট আপ করুন

এটি করার জন্য, আপনাকে প্রথমে মেল অবজেক্ট তৈরি করতে হবে এবং ইমেল পাঠানোর জন্য প্রয়োজনীয় সমস্ত ক্ষেত্র সেট আপ করতে হবে৷

মনে রাখবেন যে অনেক ক্ষেত্র ঐচ্ছিক হলেও, থেকে এবং প্রতি ক্ষেত্র প্রয়োজন।

Dim CDO_Mail As Object
Dim CDO_Config As Object
Dim SMTP_Config As Variant
Dim strSubject As String
Dim strFrom As String
Dim strTo As String
Dim strCc As String
Dim strBcc As String
Dim strBody As String
strSubject = "Results from Excel Spreadsheet"
strFrom = "rdube02@gmail.com"
strTo = "rdube02@gmail.com"
strCc = ""
strBcc = ""
strBody = "The total results for this quarter are: " & Str(Sheet1.Cells(2, 1))

এটি সম্পর্কে দুর্দান্ত জিনিস হল যে আপনি একটি সম্পূর্ণ ইমেল বার্তা কাস্টমাইজ করতে চান এমন কোনও স্ট্রিং তৈরি করতে এবং এটি strBody এ বরাদ্দ করতে পারেন পরিবর্তনশীল।

& ব্যবহার করে বার্তার উপাদানগুলিকে একত্রিত করুন৷ স্ট্রিং যেকোনও মাইক্রোসফট এক্সেল শীট থেকে সরাসরি ইমেল বার্তায় ডাটা ঢোকানোর জন্য, ঠিক যেমন উপরে দেখানো হয়েছে।

ধাপ 3:একটি বাহ্যিক SMTP ব্যবহার করতে CDO কনফিগার করুন

কোডের পরবর্তী বিভাগটি হল যেখানে আপনি ইমেল পাঠানোর জন্য কোনো বহিরাগত SMTP সার্ভার ব্যবহার করার জন্য CDO কনফিগার করবেন।

এই উদাহরণটি Gmail এর মাধ্যমে একটি নন-SSL সেটআপ। CDO SSL-এ সক্ষম, কিন্তু এটি এই নিবন্ধের সুযোগের বাইরে। আপনার যদি SSL ব্যবহার করার প্রয়োজন হয়, Github-এর এই উন্নত কোডটি সাহায্য করতে পারে৷

Set CDO_Mail = CreateObject("CDO.Message")
On Error GoTo Error_Handling
Set CDO_Config = CreateObject("CDO.Configuration")
CDO_Config.Load -1
Set SMTP_Config = CDO_Config.Fields
With SMTP_Config
.Item("https://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("https://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
.Item("https://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("https://schemas.microsoft.com/cdo/configuration/sendusername") = "email@website.com"
.Item("https://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
.Item("https://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("https://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
.Update
End With
With CDO_Mail
Set .Configuration = CDO_Config
End With

ধাপ 4:CDO সেটআপ চূড়ান্ত করুন

এখন যেহেতু আপনি ইমেল পাঠানোর জন্য SMTP সার্ভারের সাথে সংযোগটি কনফিগার করেছেন, আপনাকে যা করতে হবে তা হল CDO_Mail অবজেক্টের জন্য উপযুক্ত ক্ষেত্রগুলি পূরণ করতে হবে , এবং পাঠান ইস্যু করুন আদেশ।

আপনি এটি কীভাবে করবেন তা এখানে:

CDO_Mail.Subject = strSubject
CDO_Mail.From = strFrom
CDO_Mail.To = strTo
CDO_Mail.TextBody = strBody
CDO_Mail.CC = strCc
CDO_Mail.BCC = strBcc
CDO_Mail.Send
Error_Handling:
If Err.Description <> "" Then MsgBox Err.Description

কোনো পপ-আপ বক্স বা নিরাপত্তা সতর্কতা বার্তা থাকবে না, যা ঘটতে পারে যখন আপনি Outlook মেইল ​​অবজেক্ট ব্যবহার করেন।

CDO সহজভাবে ইমেলটি একত্রিত করে এবং বার্তাটি বন্ধ করতে আপনার SMTP সার্ভার সংযোগের বিবরণ ব্যবহার করে। মাইক্রোসফ্ট ওয়ার্ড বা এক্সেল VBA স্ক্রিপ্টগুলিতে ইমেল অন্তর্ভুক্ত করার এটি সবচেয়ে সহজ উপায়৷

এই স্ক্রিপ্টে আপনার কমান্ড বোতামটি সংযুক্ত করতে, কোড এডিটরে যান এবং শীট1-এ ক্লিক করুন সেই ওয়ার্কশীটের VBA কোড দেখতে।

আপনি উপরের স্ক্রিপ্টটি যেখানে পেস্ট করেছেন সেই ফাংশনের নাম টাইপ করুন৷

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

আমি আমার ইনবক্সে যে বার্তাটি পেয়েছি তা দেখতে কেমন ছিল তা এখানে:

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

দ্রষ্টব্য :আপনি যদি পরিবহন সার্ভারের সাথে সংযোগ করতে ব্যর্থ হয় লেখা একটি ত্রুটি পান , নিশ্চিত করুন যে আপনি SMTP_Config এর সাথে নীচে তালিকাভুক্ত কোডের লাইনে সঠিক ব্যবহারকারীর নাম, পাসওয়ার্ড, SMTP সার্ভার এবং পোর্ট নম্বর প্রবেশ করেছেন। .

এটি আরও নিন এবং সম্পূর্ণ প্রক্রিয়াটি স্বয়ংক্রিয় করুন

একটি বোতামের স্পর্শে Excel থেকে ইমেল পাঠাতে সক্ষম হওয়া সবই ভাল এবং ভাল। যাইহোক, আপনি এই কার্যকারিতাটি নিয়মিতভাবে ব্যবহার করতে চাইতে পারেন, সেক্ষেত্রে প্রক্রিয়াটি স্বয়ংক্রিয়ভাবে করা অর্থপূর্ণ হবে৷

এটি করার জন্য, আপনাকে ম্যাক্রোতে একটি পরিবর্তন করতে হবে। ভিজ্যুয়াল বেসিক এডিটরে যান এবং আমরা যে কোডটি একসাথে রাখি তার সম্পূর্ণটি কপি এবং পেস্ট করুন৷

এরপর, এই ওয়ার্কবুক নির্বাচন করুন প্রকল্প থেকে অনুক্রম।

কোড উইন্ডোর শীর্ষে থাকা দুটি ড্রপডাউন ক্ষেত্র থেকে, ওয়ার্কবুক নির্বাচন করুন৷ এবং খুলুন নির্বাচন করুন পদ্ধতি ড্রপডাউন থেকে।

উপরের ইমেল স্ক্রিপ্টটি Private Sub Workbook_Open()-এ আটকান .

আপনি যখনই এক্সেল ফাইল খুলবেন তখন এটি ম্যাক্রো চালাবে।

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

এরপর, টাস্ক শিডিউলার খুলুন .

আপনি এই টুলটি ব্যবহার করে উইন্ডোজকে নিয়মিত বিরতিতে স্বয়ংক্রিয়ভাবে স্প্রেডশীট খুলতে বলবেন, যে সময়ে আপনার ম্যাক্রো শুরু হবে, ইমেল পাঠানো হবে।

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

বেসিক টাস্ক তৈরি করুন... নির্বাচন করুন ক্রিয়া থেকে আপনি অ্যাকশন এ না পৌঁছানো পর্যন্ত মেনু এবং উইজার্ডের মাধ্যমে আপনার পথে কাজ করুন পর্দা।

একটি প্রোগ্রাম শুরু করুন নির্বাচন করুন৷ এবং পরবর্তী ক্লিক করুন .

কিভাবে VBA স্ক্রিপ্ট ব্যবহার করে একটি এক্সেল স্প্রেডশীট থেকে ইমেল পাঠাতে হয়

ব্রাউজ করুন ব্যবহার করুন৷ আপনার কম্পিউটারে মাইক্রোসফ্ট এক্সেলের অবস্থান খুঁজতে বোতাম, বা প্রোগ্রাম/স্ক্রিপ্ট-এ পাথ কপি করে পেস্ট করুন ক্ষেত্র।

তারপর, আর্গুমেন্ট যোগ করুন-এ আপনার Microsoft Excel নথির পথ প্রবেশ করান ক্ষেত্র।

উইজার্ডটি সম্পূর্ণ করুন এবং আপনার সময়সূচী ঠিক হয়ে যাবে।

ভবিষ্যতে কয়েক মিনিটের জন্য অ্যাকশনের সময় নির্ধারণ করে একটি পরীক্ষা চালানোর মূল্য, তারপর কাজটি সংশোধন করে একবার আপনি নিশ্চিত করতে পারেন যে এটি কাজ করছে।

দ্রষ্টব্য :ম্যাক্রো সঠিকভাবে চলে তা নিশ্চিত করতে আপনাকে আপনার ট্রাস্ট সেন্টার সেটিংস সামঞ্জস্য করতে হতে পারে।

এটি করতে, স্প্রেডশীট খুলুন এবং ফাইল-এ নেভিগেট করুন> বিকল্প> ট্রাস্ট সেন্টার .

এখান থেকে, ট্রাস্ট সেন্টার সেটিংস ক্লিক করুন , এবং পরবর্তী স্ক্রিনে রেডিও ডায়াল সেট করুন অবরুদ্ধ বিষয়বস্তু সম্পর্কে তথ্য দেখাবেন না .

মাইক্রোসফট এক্সেলকে আপনার জন্য কাজ করুন

মাইক্রোসফ্ট এক্সেল একটি অবিশ্বাস্যভাবে শক্তিশালী হাতিয়ার, তবে কীভাবে এটি থেকে সবচেয়ে বেশি সুবিধা পেতে হয় তা শেখা কিছুটা ভীতিজনক হতে পারে। আপনি যদি সত্যিই সফ্টওয়্যারটি আয়ত্ত করতে চান তবে আপনাকে VBA এর সাথে স্বাচ্ছন্দ্য বোধ করতে হবে এবং এটি কোন ছোট কাজ নয়৷

যাইহোক, ফলাফল নিজেদের জন্য কথা বলে। আপনার বেল্টের নীচে সামান্য VBA অভিজ্ঞতার সাথে, আপনি শীঘ্রই Microsoft Excel স্বয়ংক্রিয়ভাবে মৌলিক কাজগুলি সম্পাদন করতে সক্ষম হবেন, আপনাকে আরও গুরুত্বপূর্ণ বিষয়গুলিতে মনোনিবেশ করার জন্য আরও সময় দেবে৷

VBA এর সাথে দক্ষতা তৈরি করতে সময় লাগে, কিন্তু আপনি শীঘ্রই আপনার শ্রমের ফল দেখতে পাবেন যদি আপনি এটির সাথে লেগে থাকতে পারেন।

শুরু করার জন্য একটি দুর্দান্ত জায়গা হল এক্সেলে VBA ব্যবহার করার বিষয়ে আমাদের প্রামাণিক টিউটোরিয়াল। একবার আপনার এটি করা হয়ে গেলে, Excel থেকে ইমেল পাঠানোর এই সহজ স্ক্রিপ্টটি বাচ্চাদের খেলার মতো মনে হবে৷


  1. এক্সেল তালিকা থেকে কীভাবে ইমেল পাঠাবেন (2টি কার্যকর উপায়)

  2. কিভাবে ইমেলের মাধ্যমে একটি সম্পাদনাযোগ্য এক্সেল স্প্রেডশীট পাঠাবেন (3টি দ্রুত পদ্ধতি)

  3. কীভাবে একটি ওয়েব ফর্ম থেকে একটি এক্সেল স্প্রেডশীট পপুলেট করবেন

  4. জিমেইল এবং আউটলুক ব্যবহার করে এনক্রিপ্ট করা ইমেলগুলি কীভাবে পাঠাবেন?