Excel VBA मैक्रो जनरेटर

50 से ज़्यादा मैक्रो में से कोई काम चुनें, अपनी शीट के नाम, कॉलम और रेंज तय करें, और घोषित वेरिएबल और एरर हैंडलर वाला साफ़ VBA कॉपी करें — आपके ब्राउज़र में बना हुआ।

मैक्रो पूरी तरह आपके ब्राउज़र में बनते हैं। आपके दर्ज किए शीट नाम, रेंज, पाथ और टेक्स्ट आपके डिवाइस पर रहते हैं और ArrayKit को कभी नहीं भेजे जाते।

निर्माण और रखरखाव: Udit Agarwal

एक्सेल फॉर्मूला जनरेटर खोलें

VBA मैक्रो जनरेटर के बारे में

ज़्यादातर Excel मैक्रो गिने-चुने पैटर्न के ही रूप होते हैं: आख़िरी पंक्ति ढूँढना, बिना कोई पंक्ति छोड़े लूप चलाना, मिलान वाली पंक्तियाँ कहीं और कॉपी करना, फ़ाइल सेव करना। VBA मैक्रो जनरेटर इन पैटर्न को फ़ॉर्म में बदल देता है। खोजने योग्य लाइब्रेरी से मैक्रो चुनें, शीट का नाम, कॉलम का अक्षर, रेंज या फ़ोल्डर भरें, और आपके टाइप करते ही कोड बदलता है। हर मैक्रो Option Explicit से शुरू होता है, अपने वेरिएबल घोषित करता है, पंक्तियाँ Long के रूप में गिनता है, End(xlUp) से आख़िरी पंक्ति ढूँढता है, Select और Activate से बचता है, और ऐसे एरर हैंडलर पर ख़त्म होता है जो स्क्रीन अपडेटिंग, इवेंट और गणना को हमेशा वापस चालू कर देता है। जो मैक्रो हटाते हैं, ओवरराइट करते हैं, फ़ाइलें लिखते हैं या ईमेल बनाते हैं उन पर जोखिम लेबल और कॉपी पर टेस्ट करने की याद दिलाने वाला संदेश होता है। कोड कॉपी करें या .bas फ़ाइल डाउनलोड करें; आप जो टाइप करते हैं वह अपलोड नहीं होता।

विशेषताएँ

  • सात समूहों में 50 से ज़्यादा मैक्रो: लूप, सफ़ाई, बाँटना और जोड़ना, फ़ाइलें और ईमेल, शीट और लेआउट, इवेंट, डायलॉग
  • सेटिंग जाँची जाती हैं: कोड दिखने से पहले शीट नाम, कॉलम अक्षर, रेंज, नाम और संख्याएँ परखे जाते हैं
  • आपके टेक्स्ट में उद्धरण और लाइन ब्रेक एस्केप किए जाते हैं ताकि कोई मान बनाए गए VBA को तोड़ न सके
  • हर मैक्रो में Option Explicit, घोषित वेरिएबल, Long पंक्ति काउंटर और End(xlUp) से आख़िरी पंक्ति की पहचान
  • ऐसा एरर हैंडलर जो कुछ फ़ेल होने पर भी स्क्रीन अपडेटिंग, इवेंट और गणना बहाल करता है
  • डेटा हटाने, फ़ाइलें लिखने या ईमेल बनाने वाले मैक्रो के लिए जोखिम लेबल और याद दिलाने वाले संदेश
  • प्रोसीजर का नाम चुनें, टिप्पणियाँ चालू या बंद करें, और इस वर्कबुक पर या एक्टिव वर्कबुक पर काम करें
  • कोड कॉपी करें या .bas फ़ाइल डाउनलोड करें, साथ में पेस्ट करने और .xlsm के रूप में सेव करने के चरण-दर-चरण निर्देश

VBA मैक्रो जनरेटर का उपयोग कैसे करें

  1. लाइब्रेरी में खोजें या ब्राउज़ करें और अपने काम से मेल खाता मैक्रो चुनें
  2. सेटिंग भरें — शीट का नाम, कॉलम का अक्षर, रेंज, फ़ोल्डर या टेक्स्ट — और जो चिह्नित हो उसे ठीक करें
  3. कोड कॉपी करें या .bas फ़ाइल डाउनलोड करें
  4. Excel में Alt+F11 दबाएँ, Insert > Module चुनें, पेस्ट करें, F5 दबाएँ, फिर फ़ाइल को .xlsm के रूप में सेव करें

उदाहरण

इनपुट

Macro:            Delete blank rows
Sheet:            Orders
Blank means:      every cell in the row is empty
First row to check: 2

आउटपुट

Public Sub DeleteBlankRows()
    ...
    Set ws = ThisWorkbook.Worksheets("Orders")
    lastRow = ws.UsedRange.Row + ws.UsedRange.Rows.Count - 1
    For r = lastRow To 2 Step -1
        If Application.WorksheetFunction.CountA(ws.Rows(r)) = 0 Then
            ws.Rows(r).Delete
            removed = removed + 1
        End If
    Next r

लूप नीचे से ऊपर चलता है ताकि कोई पंक्ति हटाने से अगली पंक्ति छूट न जाए।

सामान्य त्रुटियाँ और समस्या निवारण

  • कोड पेस्ट करने पर Compile error: Variable not defined या Ambiguous name detected आता है। — पूरा बनाया हुआ ब्लॉक एक खाली मॉड्यूल में पेस्ट करें। जब आप कई मैक्रो एक ही मॉड्यूल में मिलाते हैं, तो छोटे हेल्पर फ़ंक्शन दोहरे हो जाते हैं — हर एक की सिर्फ़ एक प्रति रखें।
  • मैक्रो कुछ नहीं करता, या Excel कहता है कि मैक्रो बंद हैं। — फ़ाइल को Excel Macro-Enabled Workbook (.xlsm) के रूप में सेव करें, फिर File > Options > Trust Center से मैक्रो चालू करें। उन्हें सिर्फ़ उन फ़ाइलों में चालू करें जिन पर आपको भरोसा है।
  • Run-time error 9: Subscript out of range। — सेटिंग में दिया शीट का नाम उस वर्कबुक में मौजूद नहीं है जिस पर मैक्रो काम कर रहा है। वर्तनी जाँचें, और यह भी कि इस वर्कबुक पर काम करना है या एक्टिव वर्कबुक पर।
  • जिस मैक्रो ने डेटा हटाया या ओवरराइट किया उसे पूर्ववत नहीं किया जा सकता। — VBA के बदलाव Ctrl+Z को बायपास करते हैं। जो मैक्रो हटाते, ओवरराइट करते या फ़ाइलें लिखते हैं उन्हें हमेशा पहले अपनी वर्कबुक की कॉपी पर चलाएँ।

अक्सर पूछे जाने वाले प्रश्न

VBA मैक्रो जनरेटर कैसे तय करता है कि कौन-सा कोड बनाना है?
लाइब्रेरी का हर मैक्रो टाइप की गई सेटिंग वाला एक परखा हुआ पैटर्न है। आपके मान जाँचे जाते हैं और फिर कोड में सही जगह रखे जाते हैं, ज़रूरत हो तो कोट किए जाते हैं, इसलिए आउटपुट साधारण VBA होता है जिसे आप पढ़, संपादित और दोबारा इस्तेमाल कर सकते हैं — इसमें कोई अंदाज़ा शामिल नहीं है।
हर बनाए गए मैक्रो में एरर हैंडलर क्यों होता है?
जो मैक्रो स्क्रीन अपडेटिंग या इवेंट बंद करते हैं, वे बीच में रुक जाएँ तो Excel को उलझी हुई स्थिति में छोड़ देते हैं। हैंडलर जो भी हो उन सेटिंग को वापस चालू करता है, फिर सीधे क्रैश की जगह एरर नंबर और विवरण दिखाता है।
क्या बनाए गए मैक्रो Select या Activate इस्तेमाल करते हैं?
नहीं। वे वर्कशीट और रेंज ऑब्जेक्ट पर सीधे काम करते हैं, जो तेज़ है और इस पर निर्भर नहीं करता कि अभी क्या चुना हुआ है। पैन फ़्रीज़ करना एकमात्र काम है जिसे Excel विंडो से बाँधता है, इसलिए वह मैक्रो सेल चुनने के बजाय Application.Goto से व्यू स्क्रॉल करता है।
क्या मैं इन मैक्रो को Mac पर या वेब के लिए Excel में इस्तेमाल कर सकता हूँ?
ज़्यादातर Windows पर डेस्कटॉप Excel में चलते हैं और कई Mac पर, पर VBA वेब के लिए Excel में नहीं चलता। Outlook ईमेल मैक्रो को Windows के लिए Outlook चाहिए, और Mac पर फ़ाइल पाथ में बैकस्लैश की जगह स्लैश होते हैं।
.bas फ़ाइल और कोड पेस्ट करने में क्या अंतर है?
.bas फ़ाइल एक मॉड्यूल है जिसे आप VBA एडिटर में File > Import File से इम्पोर्ट करते हैं; पेस्ट करना वही काम हाथ से करता है। अगर आपके टेक्स्ट में उच्चारण चिह्न या प्रतीक हैं तो पेस्ट करना ज़्यादा सुरक्षित है, क्योंकि .bas फ़ाइल पुराने ANSI कैरेक्टर सेट से पढ़ी जाती है।
क्या मैक्रो जनरेटर इस्तेमाल करते समय मेरे शीट नाम और फ़ाइल पाथ कहीं भेजे जाते हैं?
नहीं। सेटिंग और कोड आपके ब्राउज़र में रहते हैं। कुछ भी अपलोड नहीं होता, और जनरेटर सिर्फ़ ऐसा टेक्स्ट बनाता है जिसे आप Excel में पेस्ट करते हैं।

संबंधित टूल

  • एक्सेल फॉर्मूला जनरेटर — शर्तों वाला योग, लुकअप, तारीख़, टेक्स्ट बाँटना या रैंकिंग जैसा काम चुनें और पेस्ट के लिए तैयार Excel या Google Sheets फॉर्मूला पाएँ।
  • एक्सेल फॉर्मूला एक्सप्लेनर — कोई भी Excel या Google Sheets फॉर्मूला पेस्ट करें और हर फ़ंक्शन व आर्गुमेंट का आसान भाषा में चरण-दर-चरण ब्योरा पाएँ।
  • एक्सेल डेटा क्लीनर — बिखरी स्प्रेडशीट साफ़ करें: स्पेस हटाएँ, केस ठीक करें, खाली पंक्तियाँ और डुप्लिकेट हटाएँ, फिर .xlsx या CSV निर्यात करें।
  • CSV से Excel कन्वर्टर — CSV या TSV फ़ाइलों को आपके ब्राउज़र में फ़ॉर्मेट की हुई .xlsx वर्कबुक में बदलें: सेपरेटर की पहचान, हेडर स्टाइल, कॉलम प्रकार और कई शीट।
  • Excel to CSV कन्वर्टर — एक .xlsx या .xls वर्कबुक को अपने ब्राउज़र में डेलिमिटर विकल्पों के साथ साफ़ CSV में एक्सपोर्ट करें।
  • VLOOKUP फॉर्मूला जनरेटर — IFERROR, सटीक या अनुमानित मिलान, XLOOKUP व INDEX MATCH विकल्पों और लाइव टेस्ट के साथ सही VLOOKUP फॉर्मूला बनाएँ।
  • INDEX MATCH फॉर्मूला जनरेटर — बाएँ लुकअप, दो-तरफ़ा लुकअप और कई शर्तों के लिए INDEX MATCH फॉर्मूले बनाएँ, लाइव टेस्ट टेबल और कॉपी के लिए तैयार आउटपुट के साथ।

Excel और स्प्रेडशीट के और टूल

  • CSV से Excel कन्वर्टर — CSV या TSV फ़ाइलों को आपके ब्राउज़र में फ़ॉर्मेट की हुई .xlsx वर्कबुक में बदलें: सेपरेटर की पहचान, हेडर स्टाइल, कॉलम प्रकार और कई शीट।
  • JSON से Excel कन्वर्टर — JSON ऐरे या नेस्टेड ऑब्जेक्ट को समतल कॉलम, हर ऐरे की एक शीट और टाइप्ड सेल वाली Excel वर्कबुक में बदलें।
  • एक्सेल डेटा क्लीनर — बिखरी स्प्रेडशीट साफ़ करें: स्पेस हटाएँ, केस ठीक करें, खाली पंक्तियाँ और डुप्लिकेट हटाएँ, फिर .xlsx या CSV निर्यात करें।
  • VLOOKUP फॉर्मूला जनरेटर — IFERROR, सटीक या अनुमानित मिलान, XLOOKUP व INDEX MATCH विकल्पों और लाइव टेस्ट के साथ सही VLOOKUP फॉर्मूला बनाएँ।
  • INDEX MATCH फॉर्मूला जनरेटर — बाएँ लुकअप, दो-तरफ़ा लुकअप और कई शर्तों के लिए INDEX MATCH फॉर्मूले बनाएँ, लाइव टेस्ट टेबल और कॉपी के लिए तैयार आउटपुट के साथ।
  • एक्सेल फॉर्मूला एक्सप्लेनर — कोई भी Excel या Google Sheets फॉर्मूला पेस्ट करें और हर फ़ंक्शन व आर्गुमेंट का आसान भाषा में चरण-दर-चरण ब्योरा पाएँ।
  • एक्सेल फॉर्मूला जनरेटर — शर्तों वाला योग, लुकअप, तारीख़, टेक्स्ट बाँटना या रैंकिंग जैसा काम चुनें और पेस्ट के लिए तैयार Excel या Google Sheets फॉर्मूला पाएँ।
  • एक्सेल फंक्शन ट्रांसलेटर — Excel फॉर्मूलों को अंग्रेज़ी और जर्मन, फ़्रेंच, स्पैनिश, इतालवी, पुर्तगाली, डच, स्वीडिश व रूसी के बीच सही सेपरेटर के साथ बदलें।

Excel और स्प्रेडशीट के सभी टूल देखें (9) · सभी टूल