ระดับการเขียนโค้ด: ผู้เริ่มต้น
ระยะเวลา: 10 นาที
ประเภทโปรเจ็กต์: ฟังก์ชันที่กำหนดเอง
วัตถุประสงค์
- ทำความเข้าใจสิ่งที่โซลูชันทำ
- ทำความเข้าใจสิ่งที่บริการ Apps Script ทําภายใน โซลูชัน
- ตั้งค่าสคริปต์
- เรียกใช้สคริปต์
เกี่ยวกับโซลูชันนี้
หากคุณนำเสนอระบบการกำหนดราคาแบบเป็นขั้นสำหรับลูกค้า ฟังก์ชันที่กำหนดเองนี้ ทำให้การคำนวณจำนวนส่วนลดสำหรับราคาของคุณง่ายขึ้น
แม้ว่าคุณจะใช้ฟังก์ชันในตัว SUMPRODUCT
เพื่อทำการกำหนดราคาตามลำดับชั้นได้
การคำนวณโดยใช้ SUMPRODUCT
จะซับซ้อนและยืดหยุ่นน้อยกว่านี้
ฟังก์ชันที่กำหนดเองของโซลูชัน
วิธีการทำงาน
รูปแบบการกำหนดราคาแบบเป็นขั้นหมายความว่าต้นทุนของสินค้าหรือบริการลดลง ตามจำนวนที่ซื้อ
ตัวอย่างเช่น สมมติว่าคุณมีระดับ 2 ระดับ โดยระดับหนึ่งมีตั้งแต่ $0-$500 และเป็น ลดราคา 10% และอีกราคาตั้งแต่ $501-$1,000 และ 20% หากราคารวมที่คุณต้องคำนวณส่วนลดคือ $700 สคริปต์ คูณ $500 แรก 10% และที่เหลือ $200 x 20% เป็นส่วนลดรวม $90
สำหรับราคารวมที่ระบุ สคริปต์จะวนซ้ำตามระดับที่ระบุใน ตามลำดับชั้น สำหรับแต่ละส่วนของราคารวมที่ลดลง ภายในระดับหนึ่ง ส่วนนั้นคูณด้วยเปอร์เซ็นต์ของระดับที่เกี่ยวข้อง ผลลัพธ์คือผลรวมของการคำนวณของแต่ละระดับ
บริการ Apps Script
โซลูชันนี้ใช้บริการต่อไปนี้:
- บริการสเปรดชีต - รับ และคำนวณส่วนของมูลค่าที่จะคูณด้วย ส่วนลดเป็นเปอร์เซ็นต์
ข้อกำหนดเบื้องต้น
หากต้องการใช้ตัวอย่างนี้ คุณต้องมีข้อกำหนดเบื้องต้นต่อไปนี้
- บัญชี Google (บัญชี Google Workspace อาจ ต้องได้รับการอนุมัติจากผู้ดูแลระบบ)
- เว็บเบราว์เซอร์ที่มีการเข้าถึงอินเทอร์เน็ต
ตั้งค่าสคริปต์
คลิกปุ่มด้านล่างเพื่อทําสําเนาฟังก์ชันที่กําหนดเองของการกําหนดราคาระดับ
สเปรดชีต โครงการ Apps Script สำหรับ
โซลูชันนี้จะแนบมากับสเปรดชีต
ทำสำเนา
เรียกใช้สคริปต์
- ในสเปรดชีตที่คัดลอก ตารางที่แถว 16 จะแสดงราคาตัวอย่าง การคำนวณสำหรับผลิตภัณฑ์ซอฟต์แวร์ในฐานะบริการ (SaaS)
- หากต้องการคำนวณจำนวนส่วนลด ในเซลล์
C20
ให้ป้อน=tierPrice(C19,$B$3:$D$6)
การอัปเดตราคาสุดท้ายในเซลล์C21
หากคุณ ในตำแหน่งที่ใช้เครื่องหมายคอมมาแบบทศนิยม คุณอาจต้องป้อน=tierPrice(C19;$B$3:$D$6)
แทน
ตรวจสอบโค้ด
หากต้องการตรวจสอบโค้ด Apps Script สําหรับโซลูชันนี้ ให้คลิกดูซอร์สโค้ด ด้านล่าง
ดูซอร์สโค้ด
Code.gs
การปรับเปลี่ยน
คุณแก้ไขฟังก์ชันที่กำหนดเองได้มากตามที่ต้องการ ต่ำกว่า เป็นส่วนเสริมที่ไม่บังคับสำหรับรีเฟรชผลลัพธ์ของฟังก์ชันที่กำหนดเองด้วยตนเอง
รีเฟรชผลลัพธ์ที่แคช
Google จะแคชฟังก์ชันที่กำหนดเองเพื่อเพิ่มประสิทธิภาพ ซึ่งแตกต่างจากฟังก์ชันในตัว ด้านประสิทธิภาพ ดังนั้นหากคุณทำการเปลี่ยนแปลงใดๆ ภายในขอบเขตที่กำหนดเอง เช่น ค่าที่มีการคำนวณ ค่านั้นอาจไม่ได้ในทันที บังคับให้อัปเดต หากต้องการรีเฟรชผลลัพธ์ของฟังก์ชันด้วยตนเอง ให้ใช้ ขั้นตอน:
- เพิ่มช่องทำเครื่องหมายในเซลล์ว่างโดยคลิกแทรก > ช่องทำเครื่องหมาย
- เพิ่มเซลล์ที่มีช่องทำเครื่องหมายเป็นพารามิเตอร์พิเศษของ
เช่น หากเพิ่มช่องทำเครื่องหมายในเซลล์
D20
ให้อัปเดต ฟังก์ชันtierPrice()
ในเซลล์C20
เพื่อ=tierPrice(C19,$B$3:$D$6,D20)
- เลือกหรือยกเลิกการเลือกช่องทำเครื่องหมายเพื่อรีเฟรชผลลัพธ์ของฟังก์ชันที่กำหนดเอง
ผู้ร่วมให้ข้อมูล
ตัวอย่างนี้ดูแลโดย Google ด้วยความช่วยเหลือจากผู้เชี่ยวชาญของ Google Developer