Saya memiliki lembar Google yang menyertakan skrip yang harus dijalankan ketika mengklik tombol. Cara yang disarankan untuk melakukan ini (sejauh yang saya tahu) adalah menyisipkan gambar dan kemudian melampirkan skrip ke gambar yang dimaksud.
Ini berfungsi dengan baik selama saya membuka lembar di desktop saya. Namun, jika saya membuka sheet di aplikasi Android Google sheet, gambar tidak muncul. Sejauh yang saya tahu ini (kurangnya) perilaku tidak didokumentasikan di mana pun, tetapi saya telah menemukan sejumlah orang dengan masalah yang sama.
Saya bertanya-tanya bagaimana saya menghindari masalah ini. Apakah saya kehilangan sesuatu yang jelas yang akan membuat gambar saya terlihat di aplikasi Android? Atau adakah cara sederhana lain untuk menambahkan pemicu skrip ke sheet yang akan berfungsi pada ponsel?
Jawaban:
Tampaknya gambar atau item menu kustom tidak berfungsi di aplikasi Android Sheets saat ini. Saya sarankan membuat "menu fungsi" dalam spreadsheet. Sebagai contoh:
onEdit
(pemicu sederhana), berjalan pada setiap pengeditan, memeriksa apakah konten B1 telah berubah. Jika demikian, ia menjalankan fungsi yang sesuai.Ini kode saya, dengan dua fungsi yang disertakan untuk tujuan demonstrasi:
Syaratnya
/^\w+$/.test(e.value)
hanya untuk memeriksa apakah kita memiliki string kosong dan tidak menjalankan kode jahat yang seseorang masukkan ke dalam sel B1. Setelah fungsi envoked withthis[e.value]();
(this
merujuk ke objek global dan berisi nama fungsi) konten B1 dihapus. Seseorang dapat memilih untuk menjalankan fungsi yang sama lagi, atau yang lain.Sebagai bukti konsep, berikut adalah screenshot dari aplikasi. Tangkapan layar 1: seleksi suatu fungsi
Tangkapan layar 2: setelah fungsi berjalan
Referensi
sumber
onEdit
pemicu sederhana menjadi pemicu yang dapat diinstal, yang berjalan dengan otorisasi pengguna yang memasang pemicu.