यह ट्यूटोरियल आपको दिखाएगा कि वीबीए का उपयोग करके आउटलुक के माध्यम से एक्सेल से ईमेल कैसे भेजें।
सक्रिय कार्यपुस्तिका भेजना
1234567891011121314151617181920 | फ़ंक्शन SendActiveWorkbook (स्ट्रिंग के रूप में strTo, स्ट्रिंग के रूप में strSubject, स्ट्रिंग के रूप में वैकल्पिक strCC, स्ट्रिंग के रूप में वैकल्पिक strBody) बूलियन के रूप मेंत्रुटि पर फिर से शुरू करें अगलामंद ऐपऑब्जेक्ट के रूप में देखेंमंद mItem वस्तु के रूप में'आउटलुक का एक नया उदाहरण बनाएं'ऐप आउटलुक सेट करें = CreateObject ("आउटलुक। एप्लिकेशन")सेट एमआइटम = एपऑउटलुक .क्रिएटआइटम(0)एमआइटम के साथ.टू = स्ट्रेटो.सीसी = ""विषय = strSubject.बॉडी = स्ट्रबॉडी.संलग्नक। ActiveWorkbook जोड़ें। पूरा नाम'तत्काल भेजने के लिए भेजें का उपयोग करें या स्क्रीन पर दिखाने के लिए प्रदर्शित करें'.प्रदर्शन 'या .भेजेंके साथ समाप्त करना'वस्तुओं को साफ करें'एमआइटम सेट करें = कुछ नहींऐप आउटलुक सेट करें = कुछ नहींअंत समारोह |
उपरोक्त कार्य को नीचे दी गई प्रक्रिया का उपयोग करके बुलाया जा सकता है
123456789101112131415 | उप SendMail ()मंद strTo स्ट्रिंग के रूप मेंस्ट्रिंग के रूप में मंद strSubjectस्ट्रिंग के रूप में मंद strBody'चरों को आबाद करें'strTo = "[email protected]"strSubject = "कृपया वित्त फ़ाइल संलग्न करें"strBody = "ईमेल के मुख्य भाग के लिए कुछ पाठ यहाँ जाता है"'ईमेल भेजने के लिए फ़ंक्शन को कॉल करें'अगर SendActiveWorkbook(strTo, strSubject, , strBody) = true तोMsgbox "ईमेल निर्माण सफल"अन्यथाMsgbox "ईमेल निर्माण विफल!"अगर अंतअंत उप |
आउटलुक ऑब्जेक्ट लाइब्रेरी को संदर्भित करने के लिए अर्ली बाइंडिंग का उपयोग करना
आउटलुक ऑब्जेक्ट को संदर्भित करने के लिए उपरोक्त कोड लेट बाइंडिंग का उपयोग करता है। आप एक्सेल के लिए एक संदर्भ जोड़ सकते हैं, और यदि पसंद हो तो अर्ली बाइंडिंग का उपयोग करके आउटलुक एप्लिकेशन और आउटलुक मेल आइटम की घोषणा कर सकते हैं। अर्ली बाइंडिंग कोड को तेजी से चलाता है, लेकिन आपको सीमित करता है क्योंकि उपयोगकर्ता को अपने पीसी पर माइक्रोसॉफ्ट ऑफिस के समान संस्करण की आवश्यकता होगी।
संदर्भ संवाद बॉक्स दिखाने के लिए टूल्स मेनू और संदर्भ पर क्लिक करें।
आपके द्वारा उपयोग किए जा रहे Office के संस्करण के लिए Microsoft Outlook ऑब्जेक्ट लाइब्रेरी में एक संदर्भ जोड़ें।
फिर आप इन संदर्भों का सीधे उपयोग करने के लिए अपने कोड में संशोधन कर सकते हैं।
अर्ली बाइंडिंग का एक बड़ा फायदा ड्रॉप डाउन सूचियां हैं जो आपको उन वस्तुओं को दिखाती हैं जो उपयोग के लिए उपलब्ध हैं!
सक्रिय कार्यपुस्तिका से एकल पत्रक भेजना
एकल पत्रक भेजने के लिए, आपको पहले मौजूदा कार्यपुस्तिका से केवल उस पत्रक के साथ एक नई कार्यपुस्तिका बनानी होगी, और फिर उस पत्रक को भेजना होगा।
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | फ़ंक्शन SendActiveWorksheet (स्ट्रिंग के रूप में strTo, स्ट्रिंग के रूप में strSubject, स्ट्रिंग के रूप में वैकल्पिक strCC, स्ट्रिंग के रूप में वैकल्पिक strBody) बूलियन के रूप मेंएरर गोटो एह पर'आवश्यक वस्तुओं को रखने के लिए चर घोषित करें'कार्यपुस्तिका के रूप में मंद wbगंतव्यस्ट्रिंग के रूप में मंद strDestNameकार्यपुस्तिका के रूप में मंद wbSourceवर्कशीट के रूप में डिम wsSourceवस्तु के रूप में मंद आउटऐपवस्तु के रूप में मंद आउटमेलस्ट्रिंग के रूप में मंद strTempNameस्ट्रिंग के रूप में मंद strTempPath'पहले गंतव्य कार्यपुस्तिका बनाएं'wbDestination = कार्यपुस्तिकाएँ सेट करें। जोड़ेंstrDestName = wbDestination.Name'स्रोत कार्यपुस्तिका और पत्रक सेट करें'सेट करें wbSource = ActiveWorkbookwsSource = wbSource.ActiveSheet सेट करें'सक्रिय पत्रक को नई कार्यपुस्तिका में कॉपी करें'wsSource.Copy के बाद: = कार्यपुस्तिकाएं (strDestName)। पत्रक(1)'एक अस्थायी नाम के साथ सहेजें'strTempPath = पर्यावरण $ ("अस्थायी") और "\"strTempName = "सूची से प्राप्त" & wbSource.Name & ".xlsx"WbDestination के साथ.SaveAs strTempPath और strTempName'अब गंतव्य कार्यपुस्तिका ईमेल करें'OutApp सेट करें = CreateObject ("आउटलुक। एप्लिकेशन")आउटमेल सेट करें = OutApp.CreateItem(0)आउटमेल के साथ.टू = स्ट्रेटोविषय = strSubject.बॉडी = स्ट्रबॉडी.अटैचमेंट्स।wbDestination.FullName . जोड़ें'तत्काल भेजने के लिए भेजें का उपयोग करें या स्क्रीन पर दिखाने के लिए प्रदर्शित करें'.डिस्प्ले 'या .डिस्प्ले'के साथ समाप्त करना.गलत बंद करेंके साथ समाप्त करना'अस्थायी कार्यपुस्तिका हटाएं जिसे आपने अपने मेल से जोड़ा है'strTempPath और strTempName को मारें'स्मृति को मुक्त करने के लिए वस्तुओं को साफ करें'सेट wbDestination = कुछ नहींसेट wbSource = कुछ नहींwsSource सेट करें = कुछ भी नहींआउटमेल सेट करें = कुछ नहींसेट आउटऐप = कुछ नहींसमारोह से बाहर निकलेंएह:MsgBox Err.Descriptionअंत समारोह |
और इस फ़ंक्शन को चलाने के लिए, हम निम्नलिखित प्रक्रिया बना सकते हैं:
12345678910111213 | सब सेंडशीटमेल ()मंद strTo स्ट्रिंग के रूप मेंस्ट्रिंग के रूप में मंद strSubjectस्ट्रिंग के रूप में मंद strBodystrTo = "[email protected]"strSubject = "कृपया वित्त फ़ाइल संलग्न करें"strBody = "ईमेल के मुख्य भाग के लिए कुछ पाठ यहाँ जाता है"अगर SendActiveWorksheet(strTo, strSubject, ,strBody) = True तबMsgBox "ईमेल निर्माण सफलता"अन्यथाMsgBox "ईमेल निर्माण विफल!"अगर अंतअंत उप |