Tingkat coding: Pemula
Durasi: 10 menit
Jenis project: Fungsi kustom
Tujuan
- Pahami fungsi solusi tersebut.
- Pahami fungsi layanan Apps Script dalam solusi tersebut.
- Siapkan skrip.
- Jalankan skrip.
Tentang solusi ini
Jika Anda menawarkan sistem harga bertingkat untuk pelanggan, fungsi kustom ini akan mempermudah penghitungan jumlah diskon untuk harga Anda.
Meskipun Anda dapat menggunakan fungsi bawaan SUMPRODUCT
untuk membuat penghitungan harga
tingkat, penggunaan SUMPRODUCT
lebih kompleks dan kurang fleksibel dibandingkan
fungsi kustom solusi ini.
Cara kerjanya
Model harga bertingkat berarti bahwa biaya barang atau layanan turun berdasarkan jumlah yang dibeli.
Misalnya, bayangkan Anda memiliki dua tingkat, satu tingkat dengan rentang harga Rp0-Rp5.000.000 dan didiskon sebesar 10% dan tingkat yang berkisar antara Rp5.010.000-Rp1.000.000 dengan diskon 20%. Jika total harga yang perlu Anda hitung diskonnya adalah $700, skrip mengalikan $500 pertama dengan 10% dan sisanya $200 dengan 20%, dengan total diskon $90.
Untuk total harga tertentu, skrip melakukan loop melalui tingkat yang ditentukan dalam tabel harga tingkat. Untuk setiap bagian dari total harga yang termasuk dalam tingkat, bagian tersebut dikalikan dengan nilai persen terkait tingkat tersebut. Hasilnya adalah jumlah perhitungan setiap tingkat.
Layanan Apps Script
Solusi ini menggunakan layanan berikut:
- Layanan spreadsheet–Mengambil nilai yang diberikan dan menghitung bagian nilai yang akan dikalikan dengan diskon persen setiap tingkat.
Prasyarat
Untuk menggunakan sampel ini, Anda memerlukan prasyarat berikut:
- Akun Google (akun Google Workspace mungkin memerlukan persetujuan administrator).
- Browser web dengan akses ke internet.
Menyiapkan skrip
Klik tombol di bawah untuk membuat salinan spreadsheet Fungsi kustom harga tingkat. Project Apps Script untuk
solusi ini dilampirkan ke spreadsheet.
Buat salinan
Jalankan skrip:
- Dalam salinan spreadsheet, tabel di baris 16 menampilkan contoh penghitungan harga untuk produk Software as a Service (SaaS).
- Untuk menghitung jumlah diskon, di sel
C20
, masukkan=tierPrice(C19,$B$3:$D$6)
. Pembaruan harga akhir di selC21
. Jika berada di lokasi yang menggunakan koma desimal, Anda mungkin harus memasukkan=tierPrice(C19;$B$3:$D$6)
.
Meninjau kode
Untuk meninjau kode Apps Script untuk solusi ini, klik Lihat kode sumber di bawah:
Melihat kode sumber
Code.gs
Modifikasi
Anda dapat mengedit fungsi kustom sesuai kebutuhan. Di bawah ini adalah tambahan opsional untuk memperbarui hasil fungsi kustom secara manual.
Muat ulang hasil yang di-cache
Tidak seperti fungsi bawaan, Google menyimpan fungsi kustom ke dalam cache untuk mengoptimalkan performa. Oleh karena itu, jika Anda mengubah sesuatu dalam fungsi kustom, seperti nilai yang sedang dihitung, perubahan tersebut mungkin tidak langsung memaksakan pembaruan. Untuk memuat ulang hasil fungsi secara manual, lakukan langkah-langkah berikut:
- Tambahkan kotak centang ke sel kosong dengan mengklik Sisipkan > Kotak Centang.
- Tambahkan sel yang memiliki kotak centang sebagai parameter tambahan untuk fungsi kustom. Misalnya, jika Anda menambahkan kotak centang ke sel
D20
, update fungsitierPrice()
dalam selC20
menjadi=tierPrice(C19,$B$3:$D$6,D20)
. - Centang atau hapus centang pada kotak untuk memuat ulang hasil fungsi kustom.
Kontributor
Contoh ini dikelola oleh Google dengan bantuan Pakar Google Developers.