ระดับการเขียนโค้ด: เริ่มต้น
ระยะเวลา: 5 นาที
ประเภทโปรเจ็กต์: ฟังก์ชันที่กำหนดเอง
วัตถุประสงค์
- ทำความเข้าใจสิ่งที่โซลูชันใช้
- ทำความเข้าใจสิ่งที่บริการ Apps Script ทำภายในโซลูชัน
- ตั้งค่าสคริปต์
- เรียกใช้สคริปต์
เกี่ยวกับโซลูชันนี้
หากมีข้อมูลที่มีโครงสร้างที่คล้ายกันในสเปรดชีตหลายรายการในสเปรดชีต เช่น เมตริกการสนับสนุนลูกค้าสำหรับสมาชิกในทีม คุณจะใช้ฟังก์ชันที่กำหนดเองนี้เพื่อสร้างข้อมูลสรุปของแต่ละชีตได้ โซลูชันนี้มุ่งเน้นที่ตั๋วสนับสนุนลูกค้า แต่คุณปรับแต่งให้เหมาะกับความต้องการได้
วิธีการทำงาน
ฟังก์ชันที่กำหนดเองที่เรียกว่า getSheetsData()
จะสรุปข้อมูลจากแต่ละชีตในสเปรดชีตตามคอลัมน์สถานะของชีต สคริปต์จะละเว้นชีตที่ไม่ควรรวมอยู่ในการรวม เช่น ชีต ReadMe และ Summary
บริการ Apps Script
โซลูชันนี้ใช้บริการต่อไปนี้
- บริการสเปรดชีต รับชีตที่ต้องสรุปและนับจำนวนรายการที่ตรงกับสตริงที่ระบุ จากนั้นสคริปต์จะเพิ่มข้อมูลที่คำนวณแล้วไปยังช่วงที่สัมพันธ์กับตำแหน่งที่เรียกใช้ฟังก์ชันที่กำหนดเองในสเปรดชีต
ข้อกำหนดเบื้องต้น
หากต้องการใช้ตัวอย่างนี้ คุณต้องมีข้อกำหนดเบื้องต้นต่อไปนี้
- บัญชี Google (บัญชี Google Workspace อาจ ต้องได้รับการอนุมัติจากผู้ดูแลระบบ)
- เว็บเบราว์เซอร์ที่เข้าถึงอินเทอร์เน็ตได้
ตั้งค่าสคริปต์
คลิกปุ่มด้านล่างเพื่อทำสำเนาของสเปรดชีตสรุปฟังก์ชันที่กำหนดเองของข้อมูลสเปรดชีต โปรเจ็กต์ Apps Script สำหรับโซลูชันนี้แนบอยู่กับสเปรดชีต
ทำสำเนา
เรียกใช้สคริปต์
- ไปที่ชีตสรุปในสเปรดชีตที่คัดลอก
- คลิกเซลล์
A4
ฟังก์ชันgetSheetsData()
อยู่ในเซลล์นี้ - ไปที่ชีตของเจ้าของแล้วอัปเดตหรือเพิ่มข้อมูลลงในชีต ตัวอย่างการดำเนินการที่คุณลองทำได้มีดังนี้
- เพิ่มแถวใหม่ที่มีข้อมูลตั๋วตัวอย่าง
- ในคอลัมน์สถานะ ให้เปลี่ยนสถานะของคำขอแจ้งปัญหาที่มีอยู่
- เปลี่ยนตำแหน่งของคอลัมน์สถานะ ตัวอย่างเช่น ในชีตOwner1 ให้เลื่อนคอลัมน์Owner1จากคอลัมน์ C ไปยังคอลัมน์ D
- ไปที่ชีตสรุป แล้วดูตารางสรุปที่อัปเดตแล้วซึ่ง
getSheetsData()
สร้างขึ้นจากเซลล์A4
คุณอาจต้องเลือกช่องทำเครื่องหมายในแถว 10 เพื่อรีเฟรชผลลัพธ์ที่แคชไว้ของฟังก์ชันที่กำหนดเอง Google แคชฟังก์ชันที่กำหนดเองเพื่อเพิ่มประสิทธิภาพการทำงาน- หากคุณเพิ่มหรืออัปเดตแถว สคริปต์จะอัปเดตจำนวนตั๋วและสถานะ
- หากคุณย้ายตำแหน่งของคอลัมน์สถานะ สคริปต์จะยังคงทำงานตามที่ต้องการกับดัชนีคอลัมน์ใหม่
ตรวจสอบโค้ด
หากต้องการตรวจสอบโค้ด Apps Script สำหรับโซลูชันนี้ ให้คลิกดูซอร์สโค้ดด้านล่าง
ดูซอร์สโค้ด
Code.gs
การปรับเปลี่ยน
คุณสามารถแก้ไขฟังก์ชันที่กำหนดเองได้มากตามต้องการเพื่อให้ตรงตามความต้องการ ด้านล่างนี้เป็นส่วนเพิ่มเติมที่ไม่บังคับสำหรับการรีเฟรชผลลัพธ์ของฟังก์ชันที่กำหนดเองด้วยตนเอง
รีเฟรชผลลัพธ์ที่แคชไว้
Google จะแคชฟังก์ชันที่กำหนดเองเพื่อเพิ่มประสิทธิภาพ ซึ่งต่างจากฟังก์ชันในตัว ซึ่งหมายความว่าหากคุณเปลี่ยนแปลงบางอย่างในฟังก์ชันที่กำหนดเอง เช่น ค่าที่คำนวณอยู่ ระบบอาจไม่ได้บังคับให้อัปเดตโดยทันที หากต้องการรีเฟรชผลลัพธ์ของฟังก์ชันด้วยตนเอง ให้ทำตามขั้นตอนต่อไปนี้
- เพิ่มช่องทำเครื่องหมายไปยังเซลล์ว่างโดยคลิกแทรก > ช่องทำเครื่องหมาย
- เพิ่มเซลล์ที่มีช่องทำเครื่องหมายเป็นพารามิเตอร์ของฟังก์ชันที่กำหนดเอง เช่น
getSheetsData(B11)
- เลือกหรือยกเลิกการเลือกช่องทำเครื่องหมายเพื่อรีเฟรชผลลัพธ์ของฟังก์ชันที่กำหนดเอง
ผู้ร่วมให้ข้อมูล
ตัวอย่างนี้ดูแลโดย Google ด้วยความช่วยเหลือจากผู้เชี่ยวชาญด้านนักพัฒนาซอฟต์แวร์ของ Google