Menu Kustom di Google Workspace

Skrip dapat memperluas produk Google tertentu dengan menambahkan elemen antarmuka pengguna yang, saat diklik, akan menjalankan fungsi Apps Script. Contoh yang paling umum adalah menjalankan skrip dari item menu kustom di Google Dokumen, Spreadsheet, Slide, atau Formulir, tetapi fungsi skrip juga dapat dipicu dengan mengklik gambar dan gambar di Google Spreadsheet.

Menu kustom di Google Dokumen, Spreadsheet, Slide, atau Formulir

Apps Script dapat menambahkan menu baru di Google Dokumen, Spreadsheet, Slide, atau Formulir, dengan setiap item menu yang terikat ke fungsi dalam skrip. (Di Google Formulir, menu kustom hanya terlihat oleh editor yang membuka formulir untuk mengubahnya, bukan oleh pengguna yang membuka formulir untuk merespons.)

Skrip hanya dapat membuat menu jika terikat dengan dokumen, spreadsheet, atau formulir. Untuk menampilkan menu saat pengguna membuka file, tulis kode menu dalam fungsi onOpen().

Contoh di bawah ini menunjukkan cara menambahkan menu dengan satu item, diikuti dengan pemisah visual, lalu sub-menu yang berisi item lain. (Perhatikan bahwa di Google Spreadsheet, kecuali jika Anda menggunakan versi baru, Anda harus menggunakan sintaksis addMenu(), dan sub-menu tidak dapat dibuat.) Saat pengguna memilih salah satu item menu, fungsi yang sesuai akan membuka dialog pemberitahuan. Untuk mengetahui informasi selengkapnya tentang jenis dialog yang dapat Anda buka, lihat panduan dialog dan sidebar.

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp 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 or FormApp.
     .alert('You clicked the first menu item!');
}

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

Dokumen, spreadsheet, presentasi, atau formulir hanya boleh berisi satu menu dengan nama tertentu. Jika skrip yang sama atau skrip lain menambahkan menu dengan nama yang sama, menu baru akan menggantikan menu yang lama. Menu tidak dapat dihapus saat file dibuka, meskipun Anda dapat menulis fungsi onOpen() untuk melewati menu di masa mendatang jika properti tertentu ditetapkan.

Gambar yang dapat diklik di Google Spreadsheet

Anda juga dapat menetapkan fungsi Apps Script ke gambar atau gambar di Google Spreadsheet, selama skrip terikat ke spreadsheet. Contoh di bawah menunjukkan cara menyiapkannya.

  1. Di Google Spreadsheet, pilih item menu Extensions > Apps Script untuk membuat skrip yang terikat ke spreadsheet.
  2. Hapus semua kode di editor skrip dan tempelkan kode di bawah ini.

      function showMessageBox() {
        Browser.msgBox('You clicked it!');
      }
    
  3. Kembali ke Spreadsheet, lalu sisipkan gambar atau gambar dengan memilih Insert > Image atau Insert > Drawing.

  4. Setelah menyisipkan gambar atau gambar, klik gambar tersebut. Pemilih menu {i>drop-down<i} kecil akan muncul di sudut kanan atas. Klik skrip tersebut, lalu pilih Tetapkan skrip.

  5. Di kotak dialog yang muncul, ketik nama fungsi Apps Script yang ingin Anda jalankan, tanpa tanda kurung — dalam hal ini, showMessageBox. Klik OK (Oke).

  6. Klik gambar atau gambar lagi. Fungsi kini dieksekusi.