Tidak perlu jadi programmer profesional atau menyewa hosting untuk punya aplikasi administrasi guru sendiri. Dengan Google Sheet sebagai basis data dan Google Apps Script sebagai mesin logikanya, guru maupun operator sekolah bisa membangun aplikasi web sederhana untuk absensi, input nilai, dan jadwal mengajar — sepenuhnya gratis. Artikel ini membahas struktur, kode, dan langkah deploy-nya secara lengkap.

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.

Yang dibutuhkan sebelum mulai: akun Google (Gmail/akun belajar.id), akses ke Google Sheets dan Google Apps Script (bawaan gratis dari Google Workspace), serta pemahaman dasar struktur tabel (kolom dan baris).

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 SheetFungsiKolom Utama
MasterData induk siswa/kelasNISN, Nama, Kelas, Wali Kelas
AbsensiCatatan kehadiran harianTanggal, NISN, Nama, Status, Keterangan
NilaiInput nilai per mata pelajaranTanggal, NISN, Nama, Mapel, Jenis Nilai, Skor
JadwalJadwal mengajar guruHari, 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

1

Buat Spreadsheet Baru

Buka Google Sheets, buat file baru, lalu susun sheet Master, Absensi, Nilai, dan Jadwal sesuai struktur kolom di atas.

2

Buka Apps Script

Dari menu Extensions, pilih Apps Script. Ini akan membuka editor kode terpisah yang terikat langsung ke spreadsheet Anda.

3

Tulis Kode Backend

Buat fungsi doGet() untuk menampilkan halaman web, serta fungsi-fungsi untuk menyimpan data absensi, nilai, dan jadwal ke sheet terkait.

4

Buat Tampilan HTML

Tambahkan file HTML sebagai antarmuka formulir yang akan dilihat pengguna saat membuka aplikasi web.

5

Deploy sebagai Web App

Gunakan menu Deploy > New Deployment, pilih tipe Web App, atur akses pengguna, lalu salin URL yang dihasilkan.

6

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.

Code.gs
// Menampilkan halaman web saat aplikasi dibuka
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.

index.html
<form id=”formAbsensi”>
  <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>
Tips praktis: mulai dari fitur absensi saja sampai benar-benar berjalan lancar sebelum menambahkan fitur nilai dan jadwal. Menumpuk banyak fitur sekaligus di percobaan pertama justru membuat proses debugging kode jadi lebih rumit dari yang seharusnya.

Cara Deploy sebagai Web App

  1. Di editor Apps Script, klik tombol Deploy, lalu pilih New Deployment.
  2. Pada Select Type, pilih Web App.
  3. Isi deskripsi singkat, lalu tentukan “Execute as” (biasanya sebagai pemilik/Me) dan “Who has access” sesuai kebutuhan (misalnya hanya pengguna dalam organisasi sekolah).
  4. Klik Deploy, lalu salin URL aplikasi web yang muncul.
  5. Buka URL tersebut di browser untuk menguji apakah formulir sudah berfungsi dan data tersimpan ke sheet.
Perhatikan keamanan akses. Jangan atur “Who has access” menjadi “Anyone” jika aplikasi menyimpan data pribadi siswa. Batasi hanya untuk pengguna dengan akun domain sekolah (belajar.id) atau daftar email tertentu agar data tidak bisa diisi sembarang orang dari luar.

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.

Pelajari Dokumentasi Resmi Google Apps Script
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.

Bagikan:

Kia Krikil

Editor di Kiakrikil.com yang fokus menyajikan berita terbaru seputar pendidikan dan teknologi.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *