สคริปต์จะเชื่อมโยงกับไฟล์ Google ชีต, เอกสาร, สไลด์ หรือฟอร์ม หากสร้างขึ้นจากเอกสารนั้น ไม่ใช่สคริปต์แบบสแตนด์อโลน ไฟล์ที่แนบสคริปต์ที่เชื่อมโยงอยู่เรียกว่า "คอนเทนเนอร์" โดยปกติแล้ว สคริปต์ที่เชื่อมโยงจะทํางานเหมือนสคริปต์สแตนด์อโลน ยกเว้นว่าสคริปต์ดังกล่าวจะไม่ปรากฏใน Google ไดรฟ์ ไม่สามารถแยกออกจากไฟล์ที่เชื่อมโยง และได้รับสิทธิ์พิเศษบางอย่างเหนือไฟล์หลัก
โปรดทราบว่าสคริปต์ยังเชื่อมโยงกับ Google Sites ได้ด้วย แต่สคริปต์เหล่านี้มักจะติดตั้งใช้งานเป็นเว็บแอป สคริปต์ที่เชื่อมโยงกับ Google ชีต, เอกสาร, สไลด์ หรือฟอร์มจะกลายเป็นเว็บแอปได้ด้วย แม้ว่าจะไม่ค่อยพบก็ตาม
สร้างสคริปต์ที่เชื่อมโยง
Google เอกสาร, ชีต หรือสไลด์
หากต้องการสร้างสคริปต์ที่เชื่อมโยงใน Google เอกสาร, ชีต หรือสไลด์ ให้เปิดเอกสารในเอกสาร สเปรดชีตในชีต หรืองานนำเสนอในสไลด์ แล้วคลิกส่วนขยาย > Apps Script หากต้องการเปิดสคริปต์อีกครั้งในอนาคต ให้ทําตามขั้นตอนเดียวกันหรือเปิดสคริปต์จากแดชบอร์ด Apps Script
Google ฟอร์ม
หากต้องการสร้างสคริปต์ที่เชื่อมโยงใน Google Forms ให้เปิดแบบฟอร์มแล้วคลิกเพิ่มเติม > เครื่องมือแก้ไขสคริปต์ หากต้องการเปิดสคริปต์อีกครั้งในอนาคต ให้ทําแบบเดิมหรือเปิดสคริปต์จากแดชบอร์ด Apps Script
วิธีการพิเศษ
สคริปต์ที่เชื่อมโยงสามารถเรียกใช้เมธอดบางรายการที่สคริปต์แบบสแตนด์อโลนเรียกไม่ได้ ดังนี้
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
และgetActiveForm()
อนุญาตให้สคริปต์ที่เชื่อมโยงอ้างอิงไฟล์หลักได้โดยไม่ต้องอ้างอิงรหัสของไฟล์getUi
ช่วยให้สคริปต์ที่เชื่อมโยงเข้าถึงอินเทอร์เฟซผู้ใช้ของไฟล์หลักเพื่อเพิ่มเมนู กล่องโต้ตอบ และแถบด้านข้างที่กำหนดเองได้- ใน Google ชีต
getActiveSheet()
,getActiveRange()
และgetActiveCell()
ช่วยให้สคริปต์ระบุชีตปัจจุบันของผู้ใช้ ช่วงของเซลล์ที่เลือก หรือเซลล์ที่เลือกแต่ละเซลล์ได้setActiveSheet(sheet)
และsetActiveRange(range)
ให้สคริปต์เปลี่ยนการเลือกเหล่านั้น - ใน Google เอกสาร
getActiveTab()
,getCursor()
และgetSelection()
ให้สคริปต์ระบุแท็บปัจจุบันของผู้ใช้ ตำแหน่งเคอร์เซอร์ของผู้ใช้ หรือข้อความที่เลือกsetActiveTab(tabId)
,setCursor(position)
และsetSelection(range)
ให้สคริปต์เปลี่ยนการเลือกเหล่านั้น
ดูข้อมูลเพิ่มเติมได้ที่คู่มือการขยาย Google ชีต หรือคู่มือการขยาย Google เอกสาร
เมนู กล่องโต้ตอบ และแถบด้านข้างที่กำหนดเอง
สคริปต์ที่เชื่อมโยงสามารถปรับแต่ง Google ชีต, เอกสาร และฟอร์มได้โดยการเพิ่มเมนูที่กำหนดเอง และกล่องโต้ตอบหรือแถบด้านข้าง อย่างไรก็ตาม โปรดทราบว่าสคริปต์จะโต้ตอบกับอินเทอร์เฟซผู้ใช้สำหรับอินสแตนซ์ปัจจุบันของไฟล์ที่เปิดอยู่เท่านั้น กล่าวคือ สคริปต์ที่เชื่อมโยงกับเอกสารหนึ่งๆ จะไม่สามารถส่งผลต่ออินเทอร์เฟซผู้ใช้ของเอกสารอื่น
ส่วนเสริม
ส่วนเสริมจะทำงานภายใน Gmail, Google ชีต, เอกสาร, สไลด์ และฟอร์ม หากคุณพัฒนาสคริปต์ที่เชื่อมโยงหรือสแตนด์อโลนและต้องการแชร์กับทุกคน Apps Script ให้คุณเผยแพร่สคริปต์เป็นส่วนเสริมเพื่อให้ผู้ใช้รายอื่นติดตั้งจาก Store ของส่วนเสริมได้
ทริกเกอร์
สคริปต์ที่เชื่อมโยงสามารถใช้ทริกเกอร์แบบง่ายได้ เช่น ฟังก์ชัน onOpen()
พิเศษ ซึ่งจะทำงานโดยอัตโนมัติทุกครั้งที่ผู้ใช้ที่มีสิทธิ์แก้ไขเปิดไฟล์ เช่นเดียวกับสคริปต์ทุกประเภท สคริปต์เหล่านี้ยังใช้ทริกเกอร์ที่ติดตั้งได้ได้ด้วย
ฟังก์ชันที่กำหนดเอง
ฟังก์ชันที่กําหนดเองคือฟังก์ชันในสคริปต์ที่เชื่อมโยงกับ Google ชีต ซึ่งคุณเรียกใช้จากเซลล์ได้โดยตรงโดยใช้ไวยากรณ์ =myFunctionName()
ฟังก์ชันที่กำหนดเองจึงคล้ายกับฟังก์ชันในตัวหลายร้อยรายการในชีต เช่น AVERAGE
หรือ SUM
ยกเว้นว่าคุณเป็นผู้กำหนดลักษณะการทํางานของฟังก์ชันที่กําหนดเอง
สิทธิ์เข้าถึงสคริปต์ที่เชื่อมโยง
เฉพาะผู้ใช้ที่มีสิทธิ์แก้ไขคอนเทนเนอร์เท่านั้นที่จะเรียกใช้สคริปต์ที่เชื่อมโยงได้ ผู้ทำงานร่วมกันที่มีสิทธิ์ดูอย่างเดียวจะเปิดเครื่องมือแก้ไขสคริปต์ไม่ได้ แต่หากทำสำเนาไฟล์คอนเทนเนอร์ ก็จะกลายเป็นเจ้าของสำเนาดังกล่าวและสามารถดูและเรียกใช้สำเนาของสคริปต์ได้
ดูวิธีแชร์ไฟล์คอนเทนเนอร์ของสคริปต์ได้ที่แชร์ไฟล์จาก Google ไดรฟ์