Computer >> कंप्यूटर ट्यूटोरियल >  >> सॉफ्टवेयर >> ईमेल

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

Microsoft Excel से ईमेल भेजने के लिए केवल कुछ सरल स्क्रिप्ट की आवश्यकता होती है। इस कार्यक्षमता को अपने स्प्रेडशीट में जोड़ें और आप वास्तव में Excel में जितना पूरा कर सकते हैं उसे बढ़ा सकते हैं।

हमने बहुत सारे बेहतरीन Excel मैक्रोज़ को कवर किया है, जो VBA स्क्रिप्ट के समान चीजें पूरी कर सकते हैं, लेकिन प्रोग्रामिंग ज्ञान की आवश्यकता के बिना। लेकिन कई उन्नत चीजें हैं जो आप केवल VBA के साथ कर सकते हैं, जैसे अपने सभी PC जानकारी के साथ एक स्प्रेडशीट रिपोर्ट बनाना।

इस ट्यूटोरियल को वीडियो के रूप में देखना पसंद करेंगे? हमने आपको कवर किया है!

Excel से ईमेल क्यों भेजें?

Microsoft Excel के अंदर से ईमेल भेजने के कई कारण हो सकते हैं।

हो सकता है आपके पास स्टाफ हो जो साप्ताहिक आधार पर दस्तावेज़ या स्प्रेडशीट अपडेट करता है, और आप उन अपडेट के पूरा होने पर ईमेल सूचना प्राप्त करना चाहें। या आपके पास संपर्कों की एक स्प्रेडशीट हो सकती है और आप उन सभी को एक साथ एक ईमेल भेजना चाहते हैं।

आप शायद सोच रहे होंगे कि Excel से ईमेल ब्रॉडकास्ट स्क्रिप्ट करना जटिल होने वाला है। बिल्कुल भी नहीं।

इस लेख में तकनीक एक ऐसी सुविधा का उपयोग करेगी जो लंबे समय से Excel VBA में उपलब्ध है, Collaboration Data Objects (CDO)।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

CDO एक मैसेजिंग कंपोनेंट है जिसका उपयोग Windows में OS की बहुत शुरुआती पीढ़ियों से किया जाता रहा है। इसे पहले CDONTS कहा जाता था, और फिर Windows 2000 और XP के आगमन के साथ, इसे "CDO for Windows 2000" से बदल दिया गया। यह कंपोनेंट पहले से ही Microsoft Word या Excel के भीतर आपके VBA इंस्टॉलेशन में शामिल है और उपयोग के लिए तैयार है।

कंपोनेंट का उपयोग करना VBA के साथ Windows उत्पादों से ईमेल भेजना बेहद आसान बनाता है। इस उदाहरण में, आप Excel में CDO कंपोनेंट का उपयोग करके एक ईमेल भेजेंगे जो एक विशिष्ट Excel सेल से परिणाम डिलीवर करेगा।

चरण 1: एक VBA मैक्रो बनाएं

पहला चरण Excel Developer टैब पर जाना है।

Developer टैब के अंदर, Controls बॉक्स में Insert पर क्लिक करें, और फिर एक कमांड बटन चुनें।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

इसे शीट में खींचें और फिर Developer रिबन में Macros पर क्लिक करके इसके लिए एक नया मैक्रो बनाएं।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

जब आप Create बटन पर क्लिक करते हैं, तो यह VBA एडिटर खोलेगा।

Tools > References पर नेविगेट करके एडिटर में CDO लाइब्रेरी का रेफरेंस जोड़ें।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

सूची को तब तक नीचे स्क्रॉल करें जब तक आपको Microsoft CDO for Windows 2000 Library न मिल जाए। चेकबॉक्स मार्क करें और OK पर क्लिक करें।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

जब आप OK पर क्लिक करते हैं, तो उस फ़ंक्शन का नाम नोट करें जहां आप स्क्रिप्ट पेस्ट कर रहे हैं। आपको बाद में इसकी आवश्यकता होगी।

चरण 2: CDO "From" और "To" फ़ील्ड सेट अप करें

ऐसा करने के लिए, आपको पहले मेल ऑब्जेक्ट बनाने और ईमेल भेजने के लिए आवश्यक सभी फ़ील्ड सेट अप करने की आवश्यकता है।

ध्यान रखें कि जबकि कई फ़ील्ड वैकल्पिक हैं, From और To फ़ील्ड आवश्यक हैं।

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 वेरिएबल को असाइन कर सकते हैं।

& स्ट्रिंग का उपयोग करके संदेश के घटकों को एक साथ जोड़कर Microsoft Excel शीट्स में से किसी से भी डेटा को सीधे ईमेल संदेश में डालें, जैसा कि ऊपर दिखाया गया है।

चरण 3: बाहरी SMTP का उपयोग करने के लिए CDO कॉन्फ़िगर करें

कोड का अगला भाग वह है जहां आप CDO को किसी भी बाहरी SMTP सर्वर का उपयोग करके ईमेल भेजने के लिए कॉन्फ़िगर करेंगे।

यह उदाहरण 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 ऑब्जेक्ट के लिए उपयुक्त फ़ील्ड भरने और Send कमांड जारी करने की आवश्यकता है।

यहां बताया गया है कि आप इसे कैसे करते हैं:

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 सर्वर कनेक्शन विवरण का उपयोग करता है। यह Microsoft Word या Excel VBA स्क्रिप्ट में ईमेल को शामिल करने का सबसे आसान तरीका है।

अपने कमांड बटन को इस स्क्रिप्ट से जोड़ने के लिए, कोड एडिटर में जाएं और उस वर्कशीट के लिए VBA कोड देखने के लिए Sheet1 पर क्लिक करें।

उस फ़ंक्शन का नाम टाइप करें जहां आपने ऊपर स्क्रिप्ट पेस्ट की थी।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

यहां वह संदेश कैसा दिखता था जो मुझे मेरे इनबॉक्स में प्राप्त हुआ:

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

नोट: यदि आपको कोई त्रुटि प्राप्त होती है जिसमें लिखा है The transport failed to connect to the server, तो सुनिश्चित करें कि आपने With SMTP_Config के तहत सूचीबद्ध कोड की लाइनों में सही उपयोगकर्ता नाम, पासवर्ड, SMTP सर्वर, और पोर्ट नंबर दर्ज किया है।

इसे आगे बढ़ाएं और पूरी प्रक्रिया को स्वचालित करें

बटन के स्पर्श पर Excel से ईमेल भेजने में सक्षम होना अच्छी बात है। हालांकि, आप इस कार्यक्षमता का नियमित आधार पर उपयोग करना चाह सकते हैं, जिस स्थिति में प्रक्रिया को स्वचालित करना समझदारी होगी।

ऐसा करने के लिए, आपको मैक्रो में बदलाव करना होगा। Visual Basic Editor पर जाएं और हमारे द्वारा एक साथ रखे गए कोड की संपूर्णता को कॉपी और पेस्ट करें।

अगला, Project पदानुक्रम से ThisWorkbook चुनें।

कोड विंडो के शीर्ष पर दो ड्रॉपडाउन फ़ील्ड से, Workbook चुनें और Methods ड्रॉपडाउन से Open चुनें।

Private Sub Workbook_Open() में ऊपर ईमेल स्क्रिप्ट पेस्ट करें।

यह मैक्रो को हर बार चलाएगा जब आप Excel फ़ाइल खोलेंगे।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

अगला, Task Scheduler खोलें।

आप इस टूल का उपयोग Windows से स्प्रेडशीट को नियमित अंतराल पर स्वचालित रूप से खोलने के लिए कहने के लिए करेंगे, जिस बिंदु पर आपका मैक्रो शुरू होगा, ईमेल भेजेगा।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

Action मेनू से Create Basic Task... चुनें और विज़ार्ड के माध्यम से तब तक काम करें जब तक आप Action स्क्रीन पर नहीं पहुंच जाते।

Start a program चुनें और Next पर क्लिक करें।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

Browse बटन का उपयोग करके अपने कंप्यूटर पर Microsoft Excel का स्थान ढूंढें, या पथ को Program/script फ़ील्ड में कॉपी और पेस्ट करें।

फिर, अपने Microsoft Excel दस्तावेज़ का पथ Add arguments फ़ील्ड में दर्ज करें।

विज़ार्ड पूरा करें, और आपका शेड्यूलिंग लागू हो जाएगा।

कुछ मिनट भविष्य में कार्रवाई को शेड्यूल करके एक परीक्षण चलाना उचित है, फिर एक बार पुष्टि होने पर कार्य को संशोधित करें कि यह काम कर रहा है।

नोट: आपको यह सुनिश्चित करने के लिए अपनी Trust Center सेटिंग्स को समायोजित करना पड़ सकता है कि मैक्रो ठीक से चलता है।

ऐसा करने के लिए, स्प्रेडशीट खोलें और File > Options > Trust Center पर नेविगेट करें।

यहां से, Trust Center Settings पर क्लिक करें, और अगली स्क्रीन पर रेडियो डायल को Never show information about blocked content पर सेट करें।

VBA स्क्रिप्ट का उपयोग करके Excel स्प्रेडशीट से ईमेल कैसे भेजें

Microsoft Excel को अपने लिए काम पर लगाएं

Microsoft Excel एक अविश्वसनीय रूप से शक्तिशाली उपकरण है, लेकिन इसका अधिकतम लाभ उठाना सीखना थोड़ा डराने वाला हो सकता है। यदि आप वास्तव में सॉफ़्टवेयर में महारत हासिल करना चाहते हैं, तो आपको VBA के साथ सहज होने की आवश्यकता होगी, और यह कोई छोटा काम नहीं है।

हालांकि, परिणाम खुद बोलते हैं। अपनी बेल्ट के नीचे थोड़े से VBA अनुभव के साथ, आप जल्द ही Microsoft Excel को बुनियादी कार्यों को स्वचालित रूप से करने में सक्षम बना पाएंगे, जिससे आपके पास अधिक दबाव वाले मामलों पर ध्यान केंद्रित करने के लिए अधिक समय होगा।

VBA के साथ विशेषज्ञता बनाने में समय लगता है, लेकिन यदि आप इसके साथ बने रह सकते हैं तो आप जल्द ही अपने परिश्रम का फल देखेंगे।

शुरू करने के लिए एक बेहतरीन जगह है Excel में VBA का उपयोग करने पर हमारा आधिकारिक ट्यूटोरियल। एक बार जब आप उसके साथ हो जाते हैं, तो Excel से ईमेल भेजने के लिए यह सरल स्क्रिप्ट बच्चों का खेल लगेगी।

  1. ईमेल के माध्यम से संपादन योग्य एक्सेल स्प्रेडशीट भेजें: 3 तेज़ और सरल तरीके ईमेल के माध्यम से संपादन योग्य एक्सेल स्प्रेडशीट भेजें: 3 तेज़ और सरल तरीके

    हम ईमेल से एक्सेल फाइलों को अटैचमेंट के रूप में आसानी से भेज सकते हैं. लेकिन यह हमेशा कुछ विशेष मामलों के लिए संभव नहीं होता, जैसे कि आप अपने एक्सेल फाइल से केवल एक स्प्रेडशीट भेजना चाहते हों। एक्सेल से हम इसे आसानी से और जल्दी से कर सकते हैं। इसलिए इस लेख में, आप 3 त्वरित तरीके सीखेंगे एक संपादन यो

  1. सर्वे परिणामों को आसानी से एक्सेल में निर्यात करें: चरण-दर-चरण मार्गदर्शिका सर्वे परिणामों को आसानी से एक्सेल में निर्यात करें: चरण-दर-चरण मार्गदर्शिका

    जब हम सर्वेक्षण करते हैं और डेटा को स्प्रेडशीट में निर्यात करना होता है, तो हमारे पास करने के लिए बहुत काम होता है। मान लीजिए आपको लगभग 1 मिलियन लोगों के सर्वेक्षण के लिए प्रविष्टियां बनानी हैं। परिणामस्वरूप, कार्य पूरा करने में पूरा दिन लग जाएगा। परिणामस्वरूप, हमें यह पता लगाना होगा कि एक सामान्य फ

  1. अपने संदेश सुरक्षित करें: जीमेल और आउटलुक में ईमेल एन्क्रिप्ट करें अपने संदेश सुरक्षित करें: जीमेल और आउटलुक में ईमेल एन्क्रिप्ट करें

    सुरक्षा सभी की प्रमुख चिंताओं में से एक है। चाहे वह सोशल मीडिया हो या ई-मेल, वेब पर गोपनीयता का खतरा स्थिर रहता है। इसलिए, ईमेल को एन्क्रिप्ट करके उन्हें कुख्यात साइबर अपराधियों से सुरक्षित रखना महत्वपूर्ण है। चूंकि ईमेल भेजना हमारा सामान्य कार्य है, हमें ध्यान देना चाहिए और अपने अटैचमेंट और ईमेल को