Google Sheets मैक्रो

Google Sheets की मदद से, ऐसे मैक्रो रिकॉर्ड किए जा सकते हैं जो आपकी तरफ़ से तय किए गए यूज़र इंटरफ़ेस (यूआई) इंटरैक्शन की एक खास सीरीज़ को डुप्लीकेट करते हैं. मैक्रो रिकॉर्ड करने के बाद, उसे Ctrl+Alt+Shift+Number फ़ॉर्म में कीबोर्ड शॉर्टकट से लिंक किया जा सकता है. उस शॉर्टकट का इस्तेमाल करके, मैक्रो चरणों को फिर से तेज़ी से एक्ज़ीक्यूट किया जा सकता है. आम तौर पर, किसी अलग जगह पर या अलग डेटा पर. Google Sheets एक्सटेंशन > मैक्रो मेन्यू से भी मैक्रो चालू किया जा सकता है.

मैक्रो रिकॉर्ड करने पर, Google Sheets अपने-आप एक Apps Script फ़ंक्शन (मैक्रो फ़ंक्शन) बनाता है. यह फ़ंक्शन मैक्रो में उसी तरीके का इस्तेमाल करता है. मैक्रो फ़ंक्शन को शीट से बताए गए Apps Script प्रोजेक्ट में, macros.gs टाइटल वाली फ़ाइल में जोड़ा जाता है. अगर पहले से ही उस नाम वाली शीट से कोई प्रोजेक्ट फ़ाइल बंधी है, तो उसमें मैक्रो फ़ंक्शन जोड़ दिया जाता है. Google Sheets, स्क्रिप्ट प्रोजेक्ट मेनिफ़ेस्ट का नाम और मैक्रो को असाइन किया गया कीबोर्ड शॉर्टकट भी अपने-आप अपडेट कर देता है.

रिकॉर्ड किए गए हर मैक्रो को पूरी तरह से Apps Script में तय किया जाता है. इसलिए, सीधे Apps Script एडिटर में उनमें बदलाव किया जा सकता है. Apps Script में नए सिरे से मैक्रो भी लिखे जा सकते हैं या पहले से लिखे गए फ़ंक्शन इस्तेमाल करके उन्हें मैक्रो में बदला जा सकता है.

Apps Script में मैक्रो बनाना

Apps Script में लिखे फ़ंक्शन को मैक्रो फ़ंक्शन के तौर पर इस्तेमाल किया जा सकता है. Google Sheets एडिटर से किसी मौजूदा फ़ंक्शन को इंपोर्ट करके, इसका आसानी से इस्तेमाल किया जा सकता है.

इसके अलावा, Apps Script एडिटर में मैक्रो बनाने के लिए यह तरीका अपनाएं:

  1. Google Sheets के यूज़र इंटरफ़ेस (यूआई) में जाकर, Apps Script एडिटर में शीट पर ले जाने वाली स्क्रिप्ट खोलने के लिए, एक्सटेंशन > Apps Script चुनें.
  2. मैक्रो फ़ंक्शन लिखें. मैक्रो फ़ंक्शन को कोई तर्क नहीं लेना चाहिए और कोई मान नहीं बताना चाहिए.
  3. मैक्रो बनाने के लिए, अपने स्क्रिप्ट मेनिफ़ेस्ट में बदलाव करें और उसे मैक्रो फ़ंक्शन से लिंक करें. इसे एक यूनीक कीबोर्ड शॉर्टकट और नाम दें.
  4. स्क्रिप्ट प्रोजेक्ट सेव करें. इसके बाद, मैक्रो शीट में इस्तेमाल करने के लिए उपलब्ध हो जाता है.
  5. शीट में मैक्रो फ़ंक्शन की जांच करें, ताकि पुष्टि की जा सके कि फ़ंक्शन सही तरीके से काम कर रहे हैं.

मैक्रो में बदलाव करना

किसी शीट से अटैच किए गए मैक्रो में बदलाव करने के लिए, यह तरीका अपनाएं:

  1. Google Sheets यूज़र इंटरफ़ेस (यूआई) में, एक्सटेंशन > मैक्रो > मैक्रो मैनेज करें चुनें.
  2. वह मैक्रो ढूंढें जिसमें आपको बदलाव करना है. इसके बाद, > मैक्रो में बदलाव करें चुनें. इससे मैक्रो फ़ंक्शन वाली प्रोजेक्ट फ़ाइल में Apps Script एडिटर खुल जाता है.
  3. मैक्रो का व्यवहार बदलने के लिए, मैक्रो फ़ंक्शन में बदलाव करें.
  4. स्क्रिप्ट प्रोजेक्ट सेव करें. इसके बाद, मैक्रो शीट में इस्तेमाल करने के लिए उपलब्ध हो जाता है.
  5. शीट में मैक्रो फ़ंक्शन की जांच करें, ताकि पुष्टि की जा सके कि फ़ंक्शन सही तरीके से काम कर रहे हैं.

फ़ंक्शन को मैक्रो के तौर पर इंपोर्ट करना

अगर किसी शीट पर पहले से ही कोई स्क्रिप्ट बाउंड है, तो स्क्रिप्ट में किसी फ़ंक्शन को नए मैक्रो के रूप में इंपोर्ट, किया जा सकता है और फिर उसे एक कीबोर्ड शॉर्टकट असाइन किया जा सकता है. ऐसा करने के लिए, मेनिफ़ेस्ट फ़ाइल में बदलाव करें और sheets.macros[] प्रॉपर्टी में कोई दूसरा एलिमेंट जोड़ें.

इसके अलावा, Sheets यूज़र इंटरफ़ेस (यूआई) से फ़ंक्शन को मैक्रो के तौर पर इंपोर्ट करने के लिए, यह तरीका अपनाएं:

  1. Google Sheets के यूज़र इंटरफ़ेस (यूआई) में जाकर, एक्सटेंशन > मैक्रो > इंपोर्ट करें चुनें.
  2. यहां दी गई सूची में से कोई फ़ंक्शन चुनें. इसके बाद, फ़ंक्शन जोड़ें पर क्लिक करें.
  3. डायलॉग बॉक्स बंद करने के लिए, को चुनें.
  4. एक्सटेंशन > मैक्रो > मैक्रो मैनेज करें चुनें.
  5. सूची में उस फ़ंक्शन को ढूंढें जिसे आपने हाल ही में इंपोर्ट किया है. मैक्रो के लिए एक खास कीबोर्ड शॉर्टकट असाइन करें. यहां मैक्रो का नाम भी बदला जा सकता है. वहीं, नाम डिफ़ॉल्ट रूप से फ़ंक्शन के नाम पर सेट होता है.
  6. मैक्रो कॉन्फ़िगरेशन को सेव करने के लिए, अपडेट करें पर क्लिक करें.

मैक्रो के लिए मेनिफ़ेस्ट स्ट्रक्चर

नीचे दी गई मेनिफ़ेस्ट फ़ाइल के उदाहरण के तौर पर दिया गया स्निपेट, Google Sheets मैक्रो के बारे में मेनिफ़ेस्ट सेक्शन दिखाता है. मेनिफ़ेस्ट का sheets सेक्शन, मैक्रो को असाइन किए गए नाम और कीबोर्ड शॉर्टकट के बारे में बताता है. साथ ही, मैक्रो फ़ंक्शन के नाम के बारे में भी बताता है.

  {
    ...
    "sheets": {
      "macros": [{
        "menuName": "QuickRowSum",
        "functionName": "calculateRowSum",
        "defaultShortcut": "Ctrl+Alt+Shift+1"
      }, {
        "menuName": "Headerfy",
        "functionName": "updateToHeaderStyle",
        "defaultShortcut": "Ctrl+Alt+Shift+2"
      }]
    }
  }

Sheets मैक्रो मेनिफ़ेस्ट को बनाने के तरीके के बारे में ज़्यादा जानने के लिए, Sheets मैक्रो मेनिफ़ेस्ट संसाधन देखें.

सबसे सही तरीके

Apps Script में मैक्रो बनाते या मैनेज करते समय, आपको नीचे दिए गए दिशा-निर्देशों का पालन करने का सुझाव दिया जाता है.

  1. हल्के वज़न के होने पर मैक्रो ज़्यादा परफ़ॉर्म करते हैं. जहां संभव हो, मैक्रो की कार्रवाइयों की संख्या सीमित करें.
  2. मैक्रो, रटने वाली कार्रवाइयों के लिए सबसे अच्छे होते हैं. इन्हें कम या बिना कॉन्फ़िगर किए, बार-बार दोहराना पड़ता है. अन्य कार्रवाइयों के लिए, इसके बजाय कस्टम मेन्यू आइटम का इस्तेमाल करें.
  3. हमेशा ध्यान रखें कि मैक्रो कीबोर्ड शॉर्टकट अनन्य होने चाहिए और किसी शीट में एक बार में शॉर्टकट वाले केवल दस मैक्रो ही हो सकते हैं. कोई भी अतिरिक्त मैक्रो सिर्फ़ एक्सटेंशन > मैक्रो मेन्यू से चलाया जा सकता है.
  4. किसी एक सेल में बदलाव करने वाले मैक्रो, सेल की कई रेंज पर लागू किए जा सकते हैं. इसके लिए, पहले पूरी रेंज चुनकर मैक्रो को चालू करना होगा. इसका मतलब यह है कि ऐसे मैक्रो बनाना अक्सर ज़रूरी नहीं होता जो सेल की पहले से तय की गई रेंज में एक ही कार्रवाई का डुप्लीकेट बनाते हों.

ये चीज़ें आप नहीं कर सकते

मैक्रो से क्या किया जा सकता है, इस पर कुछ पाबंदियां हैं:

बाउंड स्क्रिप्ट के बाहर के मैक्रो इस्तेमाल करना

मैक्रो, खास Google Sheets से जुड़ी स्क्रिप्ट में तय किए जाते हैं. अगर स्टैंडअलोन स्क्रिप्ट या वेब ऐप्लिकेशन में जानकारी दी गई है, तो मैक्रो परिभाषाओं को नज़रअंदाज़ किया जाता है.

Sheets के ऐड-ऑन में मैक्रो तय करना

Sheets ऐड-ऑन का इस्तेमाल करके, मैक्रो परिभाषाओं को बांटा नहीं जा सकता. किसी शीट ऐड-ऑन प्रोजेक्ट में मौजूद किसी भी मैक्रो परिभाषा को उस ऐड-ऑन के उपयोगकर्ता अनदेखा कर देते हैं.

स्क्रिप्ट लाइब्रेरी में मैक्रो डिस्ट्रिब्यूट करना

आप Apps Script लाइब्रेरी का इस्तेमाल करके मैक्रो परिभाषाएं शेयर नहीं कर सकते.

Google Sheets के बाहर मैक्रो का इस्तेमाल करना

मैक्रो केवल Google शीट में एक सुविधा है और यह Google दस्तावेज़, फ़ॉर्म या स्लाइड के लिए मौजूद नहीं है.