- Kenapa Google Sheet Cocok Jadi Basis Aplikasi Administrasi Guru
- Struktur Google Sheet sebagai Basis Data
- Langkah Membuat Aplikasi Web dari Google Sheet
- Contoh Kode Google Apps Script (Code.gs)
- Contoh Kode Tampilan Web (index.html)
- Cara Deploy sebagai Web App
- Menambahkan Fitur Rekap Otomatis
- Frequently Asked Questions
- Kesimpulan
Kenapa Google Sheet Cocok Jadi Basis Aplikasi Administrasi Guru
Google Sheet bukan sekadar spreadsheet biasa. Ketika dipadukan dengan Google Apps Script (bahasa scripting berbasis JavaScript milik Google), Sheet bisa berfungsi sebagai database sekaligus backend aplikasi web tanpa biaya server. Guru cukup mengetik data di kolom-kolom yang sudah familiar, sementara aplikasi web di sisi lain menyajikan tampilan formulir yang lebih ramah untuk input harian seperti absensi dan nilai.
Pendekatan ini banyak dipilih sekolah dengan anggaran terbatas karena tidak memerlukan langganan hosting, database terpisah, atau keahlian pemrograman tingkat lanjut. Selama guru memahami logika dasar spreadsheet, sebagian besar kode yang dibahas di bawah ini tinggal disesuaikan sesuai kebutuhan masing-masing sekolah.
Struktur Google Sheet sebagai Basis Data
Sebelum menulis kode, siapkan dulu struktur spreadsheet yang rapi. Idealnya, satu file Google Sheet memiliki beberapa sheet terpisah sesuai fungsinya:
| Nama Sheet | Fungsi | Kolom Utama |
|---|---|---|
| Master | Data induk siswa/kelas | NISN, Nama, Kelas, Wali Kelas |
| Absensi | Catatan kehadiran harian | Tanggal, NISN, Nama, Status, Keterangan |
| Nilai | Input nilai per mata pelajaran | Tanggal, NISN, Nama, Mapel, Jenis Nilai, Skor |
| Jadwal | Jadwal mengajar guru | Hari, Jam Ke, Mapel, Kelas, Guru |
Struktur seperti ini memudahkan fungsi Apps Script menulis data ke sheet yang tepat berdasarkan jenis formulir yang diisi pengguna, sekaligus menjaga agar data tetap rapi saat direkap di akhir semester.
Langkah Membuat Aplikasi Web dari Google Sheet
Buat Spreadsheet Baru
Buka Google Sheets, buat file baru, lalu susun sheet Master, Absensi, Nilai, dan Jadwal sesuai struktur kolom di atas.
Buka Apps Script
Dari menu Extensions, pilih Apps Script. Ini akan membuka editor kode terpisah yang terikat langsung ke spreadsheet Anda.
Tulis Kode Backend
Buat fungsi doGet() untuk menampilkan halaman web, serta fungsi-fungsi untuk menyimpan data absensi, nilai, dan jadwal ke sheet terkait.
Buat Tampilan HTML
Tambahkan file HTML sebagai antarmuka formulir yang akan dilihat pengguna saat membuka aplikasi web.
Deploy sebagai Web App
Gunakan menu Deploy > New Deployment, pilih tipe Web App, atur akses pengguna, lalu salin URL yang dihasilkan.
Uji Coba & Bagikan
Buka URL hasil deploy, uji input data, pastikan tersimpan di sheet yang benar, lalu bagikan link ke guru terkait.
Contoh Kode Google Apps Script (Code.gs)
Berikut kerangka kode backend yang menangani tampilan halaman dan penyimpanan data ke tiga sheet sekaligus (Absensi, Nilai, Jadwal). Kode ini bisa disalin ke editor Apps Script lalu disesuaikan nama sheet dan kolomnya.
function doGet() {
return HtmlService.createHtmlOutputFromFile(‘index’)
.setTitle(‘Aplikasi Administrasi Guru’);
}
// Menyimpan data absensi ke sheet “Absensi”
function simpanAbsensi(data) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(‘Absensi’);
sheet.appendRow([data.tanggal, data.nisn, data.nama, data.status, data.keterangan]);
return ‘Absensi tersimpan’;
}
// Menyimpan data nilai ke sheet “Nilai”
function simpanNilai(data) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(‘Nilai’);
sheet.appendRow([data.tanggal, data.nisn, data.nama, data.mapel, data.jenis, data.skor]);
return ‘Nilai tersimpan’;
}
// Mengambil data jadwal untuk ditampilkan di aplikasi
function ambilJadwal() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(‘Jadwal’);
return sheet.getDataRange().getValues();
}
Contoh Kode Tampilan Web (index.html)
File HTML ini menjadi antarmuka yang dilihat pengguna. Fungsi google.script.run adalah jembatan yang menghubungkan tombol di halaman web dengan fungsi backend di Code.gs tanpa perlu reload halaman.
<input type=”date” id=”tanggal” required>
<input type=”text” id=”nisn” placeholder=”NISN” required>
<input type=”text” id=”nama” placeholder=”Nama Siswa” required>
<select id=”status”>
<option>Hadir</option>
<option>Sakit</option>
<option>Izin</option>
<option>Alpa</option>
</select>
<button type=”button” onclick=”kirimAbsensi()”>Simpan</button>
</form>
<script>
function kirimAbsensi() {
var data = {
tanggal: document.getElementById(‘tanggal’).value,
nisn: document.getElementById(‘nisn’).value,
nama: document.getElementById(‘nama’).value,
status: document.getElementById(‘status’).value,
keterangan: ”
};
google.script.run.withSuccessHandler(function(res){ alert(res); })
.simpanAbsensi(data);
}
</script>
Cara Deploy sebagai Web App
- Di editor Apps Script, klik tombol Deploy, lalu pilih New Deployment.
- Pada Select Type, pilih Web App.
- Isi deskripsi singkat, lalu tentukan “Execute as” (biasanya sebagai pemilik/Me) dan “Who has access” sesuai kebutuhan (misalnya hanya pengguna dalam organisasi sekolah).
- Klik Deploy, lalu salin URL aplikasi web yang muncul.
- Buka URL tersebut di browser untuk menguji apakah formulir sudah berfungsi dan data tersimpan ke sheet.
Menambahkan Fitur Rekap Otomatis
Setelah data absensi dan nilai mulai terkumpul, langkah lanjutan yang umum dilakukan adalah membuat sheet Rekap terpisah dengan rumus seperti COUNTIF untuk menghitung total kehadiran per siswa, atau AVERAGEIF untuk rata-rata nilai per mata pelajaran. Rumus-rumus ini bekerja otomatis begitu data baru masuk lewat aplikasi web, sehingga guru tidak perlu menghitung manual di akhir semester.
Untuk referensi fungsi lengkap dan contoh lanjutan langsung dari sumbernya.
Buka Dokumentasi Apps Script
Jika sekolah Anda masih menggunakan format absensi manual berbasis Excel sebagai alternatif yang lebih sederhana tanpa coding, panduan format Excel daftar hadir guru & staf otomatis bisa jadi pilihan awal sebelum melangkah ke aplikasi berbasis Apps Script ini.
Frequently Asked Questions
Apakah membuat aplikasi dari Google Sheet ini benar-benar gratis?
Ya. Google Sheets dan Google Apps Script tersedia gratis untuk akun Gmail biasa maupun akun belajar.id, tanpa biaya hosting tambahan selama masih dalam batas kuota penggunaan wajar dari Google.
Apakah saya perlu bisa coding untuk membuat aplikasi ini?
Pemahaman dasar logika pemrograman akan sangat membantu, tetapi kode contoh di artikel ini bisa disalin dan disesuaikan tanpa harus menguasai JavaScript secara mendalam. Kesalahan umum biasanya hanya soal penamaan sheet atau kolom yang tidak konsisten.
Berapa banyak data yang bisa ditampung Google Sheet sebagai database?
Google Sheets mendukung hingga jutaan sel dalam satu file, cukup untuk kebutuhan administrasi satu sekolah dalam beberapa tahun ajaran, meski performanya bisa melambat jika data sudah sangat besar.
Apakah aplikasi ini bisa diakses banyak guru sekaligus?
Bisa, selama pengaturan akses saat deploy web app diberikan kepada seluruh guru terkait, dan mereka login menggunakan akun Google yang diizinkan.
Bagaimana jika data yang tersimpan ternyata salah?
Karena data tersimpan langsung di Google Sheet, guru atau operator masih bisa membuka spreadsheet secara manual untuk mengedit atau menghapus baris data yang keliru.
Kesimpulan
Membangun aplikasi administrasi guru dari Google Sheet dengan Google Apps Script adalah solusi realistis bagi sekolah yang ingin beralih dari pencatatan manual tanpa harus mengeluarkan biaya hosting atau menyewa jasa developer. Kunci keberhasilannya terletak pada struktur spreadsheet yang rapi sejak awal, kode backend yang sederhana namun konsisten, serta pengaturan akses yang aman saat aplikasi di-deploy. Mulailah dari satu fitur — misalnya absensi — hingga benar-benar stabil, baru kembangkan ke nilai dan jadwal. Dengan pendekatan bertahap ini, sekolah bisa memiliki aplikasi administrasi yang fungsional, murah, dan tetap mudah dipelihara oleh operator sekolah sendiri.





