Google Workspace में कस्टम मेन्यू का इस्तेमाल करना

स्क्रिप्ट ऐसे उपयोगकर्ता-इंटरफ़ेस एलिमेंट जोड़कर कुछ Google प्रॉडक्ट को विस्तृत कर सकती हैं जिन पर क्लिक करने पर Apps Script फ़ंक्शन काम करता है. इसका सबसे सामान्य उदाहरण है Google Docs, Sheets, Slides या Forms में कस्टम मेन्यू आइटम से स्क्रिप्ट चलाना. हालांकि, Google Sheets में इमेज और ड्राइंग पर क्लिक करके भी स्क्रिप्ट फ़ंक्शन ट्रिगर किए जा सकते हैं.

Google Docs, Sheets, Slides या Forms में पसंद के मुताबिक मेन्यू

Apps Script फ़ाइल, Google Docs, Sheets, Slides या Forms में नए मेन्यू जोड़ सकती है. इसमें हर मेन्यू आइटम को स्क्रिप्ट के किसी फ़ंक्शन से जोड़ा जाता है. (Google Forms में, कस्टम मेन्यू सिर्फ़ उस संपादक को दिखते हैं जो उसे बदलने के लिए फ़ॉर्म खोलता है, न कि उस उपयोगकर्ता को जो जवाब देने के लिए फ़ॉर्म खोलता है.)

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

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

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp, SlidesApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('First item', 'menuItem1')
      .addSeparator()
      .addSubMenu(ui.createMenu('Sub-menu')
          .addItem('Second item', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the first menu item!');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the second menu item!');
}

किसी दस्तावेज़, स्प्रेडशीट, प्रज़ेंटेशन या फ़ॉर्म में, दिए गए नाम वाला सिर्फ़ एक मेन्यू हो सकता है. अगर वही स्क्रिप्ट या दूसरी स्क्रिप्ट समान नाम वाला कोई मेन्यू जोड़ती है, तो नया मेन्यू पुरानी की जगह ले लेता है. फ़ाइल खुली होने पर मेन्यू हटाए नहीं जा सकते. हालांकि, अगर किसी प्रॉपर्टी को सेट किया जाता है, तो मेन्यू को स्किप करने के लिए, onOpen() फ़ंक्शन लिखा जा सकता है.

Google Sheets में क्लिक की जा सकने वाली इमेज और ड्रॉइंग

Google Sheets में किसी इमेज या ड्रॉइंग के लिए Apps Script फ़ंक्शन भी असाइन किया जा सकता है. ऐसा तब तक किया जा सकता है, जब तक स्क्रिप्ट स्प्रेडशीट से बाउंड हो. नीचे दिए गए उदाहरण में, इसे सेट अप करने का तरीका बताया गया है.

  1. Google Sheets में, मेन्यू आइटम एक्सटेंशन > चुनें. यह स्प्रेडशीट से जुड़ी स्क्रिप्ट बनाने के लिए Apps Script पर क्लिक करें.
  2. स्क्रिप्ट एडिटर में मौजूद कोई भी कोड मिटाएं और यहां दिया गया कोड चिपकाएं.

      function showMessageBox() {
        Browser.msgBox('You clicked it!');
      }
    
  3. शीट पर वापस जाएं और शामिल करें > इमेज या शामिल करें > ड्रॉइंग चुनकर एक इमेज या ड्रॉइंग शामिल करें.

  4. चित्र या ड्रॉइंग डालने के बाद, उस पर क्लिक करें. सबसे ऊपर, दाएं कोने में एक ड्रॉप-डाउन मेन्यू चुनने वाला विकल्प दिखेगा. उस पर क्लिक करें और स्क्रिप्ट असाइन करें चुनें.

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

  6. इमेज या ड्रॉइंग पर फिर से क्लिक करें. फ़ंक्शन अब निष्पादित होता है.