ระดับการเขียนโค้ด: ระดับกลาง
ระยะเวลา: 30 นาที
ประเภทโปรเจ็กต์: ส่วนเสริมของ Google Workspace
วัตถุประสงค์
- ทําความเข้าใจว่าโซลูชันทํางานอย่างไร
- ทําความเข้าใจสิ่งที่บริการ Apps Script ทําภายในโซลูชัน
- ตั้งค่าสภาพแวดล้อม
- ตั้งค่าสคริปต์
- เรียกใช้สคริปต์
เกี่ยวกับโซลูชันนี้
การคัดลอกมาโคร Google ชีตจากสเปรดชีตหนึ่งไปยังอีกสเปรดชีตหนึ่งด้วยตนเองอาจใช้เวลานานและเกิดข้อผิดพลาดได้ ส่วนเสริม Google Workspace นี้จะคัดลอกโปรเจ็กต์สคริปต์โดยอัตโนมัติและแนบไปกับสเปรดชีตที่ผู้ใช้ระบุ แม้ว่าโซลูชันนี้จะมุ่งเน้นที่มาโครชีต แต่คุณก็ใช้โซลูชันนี้เพื่อคัดลอกและแชร์สคริปต์ที่เชื่อมโยงกับคอนเทนเนอร์ได้
วิธีการทำงาน
สคริปต์จะคัดลอกโปรเจ็กต์ Apps Script ที่เชื่อมโยงกับสเปรดชีตต้นฉบับ และสร้างโปรเจ็กต์ Apps Script ที่ซ้ำกันซึ่งเชื่อมโยงกับสเปรดชีตที่ผู้ใช้ระบุ
บริการ Apps Script
โซลูชันนี้ใช้บริการต่อไปนี้
- บริการเรียก URL - เชื่อมต่อกับ AppsScript API เพื่อคัดลอกโปรเจ็กต์ต้นทางและสร้างสำเนา
- บริการสคริปต์ - ให้สิทธิ์ Apps Script API เพื่อหลีกเลี่ยงข้อความแจ้งให้สิทธิ์ครั้งที่ 2
- บริการสเปรดชีต - เปิดสเปรดชีตเป้าหมายเพื่อเพิ่มโปรเจ็กต์ Apps Script ที่คัดลอก
- บริการการ์ด - สร้างอินเทอร์เฟซผู้ใช้ของส่วนเสริม
ข้อกำหนดเบื้องต้น
หากต้องการใช้ตัวอย่างนี้ คุณต้องมีข้อกําหนดเบื้องต้นต่อไปนี้
- บัญชี Google (บัญชี Google Workspace อาจต้องได้รับอนุมัติจากผู้ดูแลระบบ)
เว็บเบราว์เซอร์ที่มีการเข้าถึงอินเทอร์เน็ต
Google Apps Script API เปิดอยู่ในการตั้งค่าแดชบอร์ด Apps Script
ตั้งค่าสภาพแวดล้อม
เปิดโปรเจ็กต์ที่อยู่ในระบบคลาวด์ใน Google Cloud Console
หากยังไม่ได้เปิด ให้เปิดโปรเจ็กต์ที่อยู่ในระบบคลาวด์ซึ่งคุณตั้งใจจะใช้สำหรับตัวอย่างนี้
- ในคอนโซล Google Cloud ให้ไปที่หน้าเลือกโปรเจ็กต์
- เลือกโปรเจ็กต์ Google Cloud ที่ต้องการใช้ หรือคลิกสร้างโปรเจ็กต์ แล้วทำตามวิธีการบนหน้าจอ หากสร้างโปรเจ็กต์ Google Cloud คุณอาจต้องเปิดการเรียกเก็บเงินสำหรับโปรเจ็กต์
เปิด Google Apps Script API
การเริ่มต้นใช้งานอย่างรวดเร็วนี้ใช้ Google Apps Script API
คุณต้องเปิดใช้ API ของ Google ในโปรเจ็กต์ Google Cloud ก่อนจึงจะใช้ได้ คุณเปิด API อย่างน้อย 1 รายการในโปรเจ็กต์ Google Cloud โปรเจ็กต์เดียวได้เปิด Google Apps Script API ในโปรเจ็กต์ Cloud
กำหนดค่าหน้าจอขอความยินยอม OAuth
ส่วนเสริมของ Google Workspace ต้องมีการกําหนดค่าหน้าจอขอความยินยอม การกําหนดค่าหน้าจอขอความยินยอม OAuth ของส่วนเสริมจะกําหนดสิ่งที่ Google จะแสดงต่อผู้ใช้
- ในคอนโซล Google Cloud ให้ไปที่เมนู > > การสร้างแบรนด์
- หากกําหนดค่า แล้ว คุณจะกําหนดการตั้งค่าหน้าจอขอความยินยอม OAuth ต่อไปนี้ได้ในการสร้างแบรนด์ กลุ่มเป้าหมาย และการเข้าถึงข้อมูล หากเห็นข้อความว่า not configured yet ให้คลิกเริ่มต้นใช้งาน
- ในส่วนข้อมูลแอป ให้ป้อนชื่อแอปในส่วนชื่อแอป
- ในอีเมลสนับสนุนสำหรับผู้ใช้ ให้เลือกอีเมลทีมสนับสนุนที่ผู้ใช้สามารถติดต่อคุณได้หากมีข้อสงสัยเกี่ยวกับการยินยอม
- คลิกถัดไป
- เลือกภายในในส่วนผู้ชม
- คลิกถัดไป
- ในส่วนข้อมูลติดต่อ ให้ป้อนอีเมลที่คุณจะใช้รับการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงในโปรเจ็กต์
- คลิกถัดไป
- ในส่วนเสร็จสิ้น ให้อ่านนโยบายข้อมูลผู้ใช้ของบริการ Google API และเลือกฉันยอมรับนโยบายข้อมูลผู้ใช้ของบริการ Google API หากยอมรับ
- คลิกต่อไป
- คลิกสร้าง
- ในระหว่างนี้ คุณสามารถข้ามการเพิ่มขอบเขตได้ ในอนาคต เมื่อคุณสร้างแอปเพื่อใช้งานนอกองค์กร Google Workspace คุณต้องเปลี่ยนประเภทผู้ใช้เป็นภายนอก จากนั้นเพิ่มขอบเขตการให้สิทธิ์ที่แอปของคุณต้องใช้ ดูข้อมูลเพิ่มเติมได้ที่คู่มือกำหนดค่าความยินยอม OAuth ฉบับเต็ม
ตั้งค่าสคริปต์
สร้างโปรเจ็กต์ Apps Script
- คลิกปุ่มต่อไปนี้เพื่อเปิดโปรเจ็กต์ Share a macro (แชร์มาโคร) ของ Apps Script
เปิดโปรเจ็กต์ - คลิกภาพรวม
- ในหน้าภาพรวม ให้คลิก "ทําสําเนา"
คัดลอกหมายเลขโปรเจ็กต์ที่อยู่ในระบบคลาวด์
- ในคอนโซล Google Cloud ให้ไปที่เมนู > IAM และผู้ดูแลระบบ > การตั้งค่า
- คัดลอกค่าในช่องหมายเลขโปรเจ็กต์
ตั้งค่าโปรเจ็กต์ Cloud ของโปรเจ็กต์ Apps Script
- ในโปรเจ็กต์ Apps Script ที่คัดลอก ให้คลิกการตั้งค่าโปรเจ็กต์
- ในส่วนโปรเจ็กต์ Google Cloud Platform (GCP) ให้คลิกเปลี่ยนโปรเจ็กต์
- ในหมายเลขโปรเจ็กต์ GCP ให้วางหมายเลขโปรเจ็กต์ Google Cloud
- คลิกตั้งค่าโปรเจ็กต์
ติดตั้งการทำให้ใช้งานได้แบบทดสอบ
- ในโปรเจ็กต์ Apps Script ที่คัดลอก ให้คลิกเครื่องมือแก้ไข
- เปิดไฟล์
UI.gs
แล้วคลิกเรียกใช้ ให้สิทธิ์สคริปต์เมื่อได้รับข้อความแจ้ง - คลิกทำให้ใช้งานได้ > ทดสอบการใช้งาน
- คลิกติดตั้ง > เสร็จสิ้น
รับสคริปต์มาโครและข้อมูลสเปรดชีต
- เปิดสเปรดชีตชีตที่มีมาโครและคุณมีสิทธิ์แก้ไข หากต้องการใช้สเปรดชีตตัวอย่าง ให้ทำสำเนาสเปรดชีตมาโครตัวอย่าง
- คลิกส่วนเสริม > Apps Script
- ในโปรเจ็กต์ Apps Script ให้คลิกการตั้งค่าโปรเจ็กต์
- คลิกคัดลอกใต้รหัสสคริปต์
- เก็บรหัสสคริปต์ไว้ใช้ในขั้นตอนถัดไป
- เปิดหรือสร้างสเปรดชีตใหม่ที่ต้องการเพิ่มมาโคร คุณต้องมีสิทธิ์แก้ไขสเปรดชีต
- คัดลอก URL ของสเปรดชีตและวางไว้ใช้ภายหลัง
เรียกใช้สคริปต์
ตรวจสอบว่าเปิด Google Apps Script API ในการตั้งค่าหน้าแดชบอร์ดแล้ว ทําตามขั้นตอนในส่วนต่อไปนี้เพื่อเรียกใช้สคริปต์
คัดลอกมาโคร
- ในชีต ให้เปิดส่วนเสริม "แชร์มาโคร" ในแถบด้านข้างขวา
- วางรหัสสคริปต์ในส่วนมาโครแหล่งที่มา
- วาง URL ของสเปรดชีตในส่วนสเปรดชีตเป้าหมาย
- คลิกแชร์มาโคร
- คลิกให้สิทธิ์เข้าถึงและให้สิทธิ์ส่วนเสริม
- ทำขั้นตอนที่ 2-4 ซ้ำ
เปิดมาโครที่คัดลอก
- หากยังไม่ได้เปิด ให้เปิดสเปรดชีตที่คุณคัดลอกมาโครไปไว้
- คลิกส่วนเสริม > Apps Script
- หากไม่เห็นโปรเจ็กต์ Apps Script ที่คัดลอก ให้ตรวจสอบว่าได้เปิด Google Apps Script API ในการตั้งค่าหน้าแดชบอร์ดแล้ว แล้วทำตามขั้นตอนที่ระบุไว้ในส่วนคัดลอกมาโครซ้ำ
ตรวจสอบโค้ด
หากต้องการตรวจสอบโค้ด Apps Script ของโซลูชันนี้ ให้คลิกดูซอร์สโค้ดด้านล่าง
ดูซอร์สโค้ด
Code.gs
UI.gs
appsscript.json
ผู้ร่วมให้ข้อมูล
ตัวอย่างนี้ได้รับการดูแลโดย Google ด้วยความช่วยเหลือจากผู้เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์ของ Google