ईमेल संचार के लिए सबसे शक्तिशाली उपकरणों में से एक है। ईमेल जनरेशन को स्वचालित करने से समय की बचत हो सकती है और संचार में स्थिरता सुनिश्चित हो सकती है। Excel VBA एक डायनामिक ईमेल जनरेटर बना सकता है जो आपको टेम्प्लेट से व्यक्तिगत ईमेल स्वचालित रूप से उत्पन्न करने की अनुमति देता है।
इस लेख में, हम Excel में टेम्प्लेट के साथ एक डायनामिक ईमेल जनरेटर बनाएंगे।
पूर्वापेक्षाएँ
- Microsoft Excel (2016 या नया)।
- Excel की बुनियादी समझ।
- VBA संपादक तक पहुंच (डेवलपर टैब सक्षम)।
चरण 1: अपनी Excel वर्कबुक सेट करना
डेटा शीट बनाएं
- Data नाम से एक नई शीट जोड़ें।
- प्राप्तकर्ता जानकारी के लिए कॉलम बनाएं:
- पहला नाम
- अंतिम नाम
- ईमेल
- कंपनी
- विभाग
- भूमिका
- मीटिंग विषय
- कार्रवाई आइटम
- प्रेषक नाम

टेम्प्लेट शीट बनाएं
- Templates नाम से एक और शीट बनाएं।
- निम्नलिखित कॉलम बनाएं:
- टेम्प्लेट ID
- टेम्प्लेट नाम
- विषय पंक्ति
- ईमेल बॉडी
चरण 2: ईमेल टेम्प्लेट बनाना
एक ईमेल टेम्प्लेट बनाएं जो {{FirstName}}, {{Company}}, {{Department}}, {{Role}} जैसे प्लेसहोल्डर का उपयोग करके मानों को डायनामिक रूप से सम्मिलित करता है।
टेम्प्लेट 1:
स्वचालित ऑनबोर्डिंग ईमेल के लिए एक टेम्प्लेट बनाते हैं।
प्रिय {{FirstName}}, {{Company}} में आपका स्वागत है! आपको बोर्ड पर पाकर हम उत्साहित हैं। आपका खाता निम्न विवरण के साथ सेट किया गया है: विभाग: {{Department}} भूमिका: {{Role}} सादर, HR टीम
यह टेम्प्लेट स्वचालित ऑनबोर्डिंग ईमेल के लिए उपयोग किया जाता है, जहां भेजने से पहले वास्तविक मान प्लेसहोल्डर को प्रतिस्थापित करते हैं, जिससे प्रत्येक प्राप्तकर्ता के लिए एक व्यक्तिगत संदेश सुनिश्चित होता है।
व्याख्या:
- {{FirstName}}: कर्मचारी के पहले नाम के लिए प्लेसहोल्डर।
- {{Company}}: कंपनी के नाम के लिए प्लेसहोल्डर।
- {{Department}}: उस विभाग के लिए प्लेसहोल्डर जहां नया कर्मचारी नियुक्त है।
- {{Role}}: कर्मचारी की नौकरी की भूमिका के लिए प्लेसहोल्डर।
टेम्प्लेट 2:
हमने मीटिंग के बाद के संचार के लिए एक और टेम्प्लेट बनाया।
हाय {{FirstName}}, {{Meeting Topic}} के बारे में हमारी चर्चा के दौरान आपके समय के लिए धन्यवाद। जैसा कि चर्चा हुई, मैं {{Action Item}} पर फॉलो अप कर रहा हूं। यदि आपके कोई प्रश्न हैं तो मुझे बताएं। सादर, {{Sender Name}}

चरण 3: VBA कोड डालें
VBA संपादक खोलने के लिए:
- डेवलपर टैब पर जाएं >> विजुअल बेसिक चुनें।
- सम्मिलित करें >> मॉड्यूल चुनें।
- निम्न कोड कॉपी और पेस्ट करें:

Option Explicit Public Sub GenerateEmails() Dim ws As Worksheet Dim templateWs As Worksheet Dim lastRow As Long Dim i As Long Dim emailBody As String Dim subjectLine As String Dim templateID As Long ' वर्कशीट के संदर्भ सेट करें Set ws = ThisWorkbook.Sheets("Data") Set templateWs = ThisWorkbook.Sheets("Templates") ' डेटा के साथ अंतिम पंक्ति खोजें lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' उपयोगकर्ता से टेम्प्लेट ID प्राप्त करें templateID = InputBox("टेम्प्लेट ID नंबर दर्ज करें:", "टेम्प्लेट चुनें") ' टेम्प्लेट टेक्स्ट प्राप्त करें subjectLine = GetTemplate("Subject_Line", templateID) emailBody = GetTemplate("Email_Body", templateID) ' विशेष वर्णों को उचित लाइन ब्रेक में बदलें emailBody = Replace(emailBody, "\n", vbNewLine) ' Outlook आइटम बनाएं Dim outlookApp As Object Dim emailItem As Object Set outlookApp = CreateObject("Outlook.Application") ' डेटा की प्रत्येक पंक्ति के माध्यम से लूप करें For i = 2 To lastRow ' नया ईमेल बनाएं Set emailItem = outlookApp.CreateItem(0) With emailItem ' प्लेसहोल्डर को वास्तविक डेटा से बदलें .Subject = ReplaceFields(subjectLine, i, ws) .Body = ReplaceFields(emailBody, i, ws) ' .HTMLBody से .Body में बदला गया .To = ws.Cells(i, 3).Value ' कॉलम C में ईमेल पता .Display ' ईमेल प्रदर्शित करें (स्वचालित रूप से भेजने के लिए .Send में बदलें) End With Next i Set outlookApp = Nothing End Sub Private Function GetTemplate(field As String, templateID As Long) As String Dim templateWs As Worksheet Dim templateRow As Range Set templateWs = ThisWorkbook.Sheets("Templates") ' टेम्प्लेट पंक्ति खोजें Set templateRow = templateWs.Columns(1).Find(What:=templateID, LookIn:=xlValues, LookAt:=xlWhole) If Not templateRow Is Nothing Then Select Case field Case "Subject_Line" GetTemplate = templateWs.Cells(templateRow.Row, 3).Value Case "Email_Body" GetTemplate = templateWs.Cells(templateRow.Row, 4).Value End Select End If End Function Private Function ReplaceFields(text As String, rowNum As Long, ws As Worksheet) As String Dim result As String result = text ' सभी फ़ील्ड प्लेसहोल्डर को वास्तविक डेटा से बदलें result = Replace(result, "{{FirstName}}", ws.Cells(rowNum, 1).Value) result = Replace(result, "{{LastName}}", ws.Cells(rowNum, 2).Value) result = Replace(result, "{{Company}}", ws.Cells(rowNum, 4).Value) result = Replace(result, "{{Department}}", ws.Cells(rowNum, 5).Value) result = Replace(result, "{{Role}}", ws.Cells(rowNum, 6).Value) result = Replace(result, "{{Meeting Topic}}", ws.Cells(rowNum, 7).Value) result = Replace(result, "{{Action Item}}", ws.Cells(rowNum, 8).Value) result = Replace(result, "{{Sender Name}}", ws.Cells(rowNum, 9).Value) ReplaceFields = result End Function
चरण 4: ईमेल जनरेटर चलाएं
- डेवलपर टैब पर >> मैक्रो पर क्लिक करें।
- GenerateEmails चुनें >> चलाएं पर क्लिक करें।

- संदेश बॉक्स में >> टेम्प्लेट ID: 1 दर्ज करें।
- यह टेम्प्लेट 1 के अनुसार सभी मेल भेजेगा।

- फिर से चलाएं कोड।
- संदेश बॉक्स में >> टेम्प्लेट ID: 2 दर्ज करें।

यह टेम्प्लेट 2 के अनुसार सभी मेल भेजेगा।

- भेजने से पहले उत्पन्न ईमेल की समीक्षा करें।
- यदि समीक्षा की आवश्यकता नहीं है, तो सभी ईमेल भेजने के लिए .Display के बजाय .Send प्रॉपर्टी का उपयोग करें।
अनुकूलन युक्तियाँ
नए प्लेसहोल्डर फ़ील्ड जोड़ना:
- डेटा शीट में एक नया कॉलम जोड़ें।
- नए फ़ील्ड को शामिल करने के लिए VBA कोड में ReplaceFields फ़ंक्शन अपडेट करें।
- {{FieldName}} प्रारूप का उपयोग करके अपने ईमेल टेम्प्लेट में नया प्लेसहोल्डर जोड़ें।
HTML फ़ॉर्मेटिंग:
आप अपने ईमेल टेम्प्लेट में HTML फ़ॉर्मेटिंग शामिल कर सकते हैं:
<p style="color: blue;">यह टेक्स्ट नीला होगा</p> <strong>यह टेक्स्ट बोल्ड होगा</strong>
निष्कर्ष
यह ट्यूटोरियल आपको पूर्वनिर्धारित टेम्प्लेट और VBA ऑटोमेशन के साथ Excel में डायनामिक ईमेल जनरेशन सेट अप करने में मदद करेगा। आप इन टेम्प्लेट का उपयोग व्यावसायिक संचार, क्लाइंट फॉलो-अप, और स्वचालित रिमाइंडर के लिए कर सकते हैं। यह ईमेल जनरेटर एक नींव के रूप में काम करेगा, आप इसे अपनी विशिष्ट आवश्यकताओं के आधार पर अनुकूलित कर सकते हैं। बस टेम्प्लेट बनाएं, डेटा शीट अपडेट करें, और VBA कोड में प्लेसहोल्डर। उत्पादन वातावरण में उपयोग करने से पहले अच्छी तरह से परीक्षण करना याद रखें।
मुफ़्त उन्नत Excel अभ्यास समाधान के साथ प्राप्त करें!