Skrip Google Apps memungkinkan Anda melakukan hal-hal baru dan keren dengan Google Spreadsheet. Anda dapat menggunakan Apps Script untuk menambahkan menu, dialog, dan sidebar khusus ke Google Sheets. Ini juga memungkinkan Anda menulis fungsi khusus untuk Spreadsheet, serta mengintegrasikan Spreadsheet dengan layanan Google lainnya seperti Kalender, Drive, dan Gmail
Sebagian besar skrip yang dirancang untuk Google Spreadsheet memanipulasi larik untuk berinteraksi dengan sel, baris, dan kolom dalam spreadsheet. Jika Anda tidak terbiasa dengan array di JavaScript, Codecademy menawarkan modul pelatihan yang bagus untuk array. (Perhatikan bahwa kursus ini tidak dikembangkan oleh dan tidak terkait dengan Google. )
Untuk pengenalan cepat menggunakan Apps Script dengan Google Sheets, lihat panduan mulai cepat 5 menit untuk Makro, Menu, dan Fungsi Kustom
Memulai
Apps Script menyertakan API khusus untuk memungkinkan Anda membuat, membaca, dan mengedit Google Spreadsheet secara terprogram. Apps Script dapat berinteraksi dengan Google Sheets dalam dua cara yang luas. skrip apa pun dapat membuat atau memodifikasi spreadsheet jika pengguna skrip memiliki izin yang sesuai untuk spreadsheet tersebut, dan skrip juga dapat diikat ke spreadsheet, yang memberikan skrip kemampuan khusus untuk mengubah antarmuka pengguna atau merespons saat spreadsheet dibuka. Untuk membuat skrip terikat, pilih Ekstensi > Apps Script dari dalam Google Sheets.
Layanan Spreadsheet memperlakukan Google Sheets sebagai kisi, beroperasi dengan larik dua dimensi. Untuk mengambil data dari spreadsheet, Anda harus mendapatkan akses ke spreadsheet tempat data disimpan, mendapatkan rentang di spreadsheet yang menyimpan data, lalu mendapatkan nilai sel. Apps Script memfasilitasi akses ke data dengan membaca data terstruktur di spreadsheet dan membuat objek JavaScript untuk data tersebut
Membaca data
Misalkan Anda memiliki daftar nama produk dan nomor produk yang Anda simpan di spreadsheet, seperti yang ditunjukkan pada gambar di bawah ini
Contoh di bawah menunjukkan cara mengambil dan mencatat nama produk dan nomor produk
function logProductInfo() { var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getDataRange().getValues(); for (var i = 0; i < data.length; i++) { Logger.log('Product name: ' + data[i][0]); Logger.log('Product number: ' + data[i][1]); } }Lihat log
Untuk melihat data yang telah dicatat, di bagian atas editor skrip, klik Log eksekusi
Menulis data
Untuk menyimpan data, seperti nama dan nomor produk baru ke spreadsheet, tambahkan kode berikut di akhir skrip
function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } _Kode di atas menambahkan baris baru di bagian bawah spreadsheet, dengan nilai yang ditentukan. Jika Anda menjalankan fungsi ini, Anda akan melihat baris baru ditambahkan ke spreadsheet
Menu khusus dan antarmuka pengguna
Anda dapat menyesuaikan Google Spreadsheet dengan menambahkan menu, kotak dialog, dan sidebar khusus. Untuk mempelajari dasar-dasar pembuatan menu, lihat panduan menu. Untuk mempelajari tentang mengkustomisasi konten kotak dialog, lihat
Anda juga dapat melampirkan fungsi skrip ke gambar atau gambar di dalam spreadsheet; . Untuk mempelajari lebih lanjut, lihat
Jika Anda berencana menerbitkan antarmuka khusus sebagai bagian dari , ikuti panduan gaya agar konsisten dengan gaya dan tata letak editor Google Spreadsheet
Menghubungkan ke Google Formulir
Apps Script memungkinkan Anda menghubungkan Google Forms dengan Google Sheets melalui layanan Forms dan Spreadsheet. Fitur ini dapat membuat Google Form secara otomatis berdasarkan data di spreadsheet. Apps Script juga memungkinkan Anda menggunakan , seperti onFormSubmit untuk melakukan tindakan tertentu setelah pengguna merespons formulir. Untuk mempelajari lebih lanjut tentang menghubungkan Google Sheets ke Google Forms, coba mulai cepat 5 menit Mengelola Respons untuk Google Forms
Pemformatan
Kelas Range_ memiliki metode seperti untuk mengakses dan mengubah format sel atau rentang sel. Contoh berikut memperlihatkan bagaimana Anda bisa menyetel gaya font rentang
function formatMySpreadsheet() { // Set the font style of the cells in the range of B2:C2 to be italic. var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var cell = sheet.getRange('B2:C2'); cell.setFontStyle('italic'); }Validasi data
Apps Script memungkinkan Anda mengakses aturan validasi data yang ada di Google Sheets atau membuat aturan baru. Misalnya, contoh berikut menunjukkan cara menyetel aturan validasi data yang hanya mengizinkan angka antara 1 dan 100 pada sel
function validateMySpreadsheet() { // Set a rule for the cell B4 to be a number between 1 and 100. var cell = SpreadsheetApp.getActive().getRange('B4'); var rule = SpreadsheetApp.newDataValidation() .requireNumberBetween(1, 100) .setAllowInvalid(false) .setHelpText('Number must be between 1 and 100.') .build(); cell.setDataValidation(rule); }Untuk detail selengkapnya tentang bekerja dengan aturan validasi data, lihat , DataValidationBuilder, dan
Bagan
Apps Script memungkinkan Anda menyematkan bagan dalam spreadsheet yang mewakili data dalam rentang tertentu. Contoh berikut menghasilkan bagan batang tersemat, dengan asumsi Anda memiliki data yang dapat dipetakan dalam sel function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 1
function newChart() { // Generate a chart representing the data in the range of A1:B15. var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(sheet.getRange('A1:B15')) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart); }Untuk mempelajari lebih lanjut tentang menyematkan bagan ke dalam spreadsheet Anda, lihat function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 2 dan pembuat bagan tertentu, seperti function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 3
Fungsi khusus di Google Spreadsheet
Fungsi khusus serupa dengan fungsi spreadsheet bawaan seperti function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 4 kecuali bahwa Anda menentukan perilaku fungsi dengan Apps Script. Misalnya, Anda dapat membuat fungsi khusus, function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 5, yang mengonversi nilai dari inci ke milimeter, lalu gunakan rumus di spreadsheet Anda dengan mengetikkan function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 6 atau function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 7 ke dalam sel
Untuk mempelajari lebih lanjut tentang fungsi kustom, coba panduan memulai 5 menit Menu dan Fungsi Kustom, atau lihat panduan yang lebih mendalam untuk fungsi kustom
Makro
Makro adalah cara lain untuk mengeksekusi kode Apps Script dari UI Google Sheets. Tidak seperti fungsi khusus, Anda mengaktifkannya dengan pintasan keyboard atau melalui menu Google Sheets. Untuk informasi selengkapnya, lihat Makro Google Spreadsheet
Add-on untuk Google Spreadsheet
Add-on adalah paket khusus proyek Apps Script yang berjalan di dalam Google Sheets dan dapat diinstal dari toko add-on Google Sheets. Jika Anda telah mengembangkan skrip untuk Google Sheets dan ingin membaginya dengan dunia, Apps Script memungkinkan Anda memublikasikan skrip Anda sebagai add-on sehingga pengguna lain dapat menginstalnya dari toko add-on
Pemicu
Skrip yang terikat ke file Google Spreadsheet dapat menggunakan pemicu sederhana seperti fungsi function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 8 dan function addProduct() { var sheet = SpreadsheetApp.getActiveSheet(); sheet.appendRow(['Cotton Sweatshirt XL', 'css004']); } 9 untuk merespons secara otomatis saat pengguna yang memiliki akses edit ke spreadsheet membuka atau mengedit spreadsheet
Seperti pemicu sederhana, pemicu yang dapat diinstal memungkinkan Google Spreadsheet menjalankan fungsi secara otomatis saat peristiwa tertentu terjadi. Pemicu yang dapat diinstal, bagaimanapun, menawarkan lebih banyak fleksibilitas daripada pemicu sederhana dan mendukung acara berikut. buka, edit, ubah, kirim formulir, dan berdasarkan waktu (jam)