คำถามติดแท็ก google-apps-script

สำหรับคำถามเกี่ยวกับการใช้ Google Apps Script เพื่อขยายแอปพลิเคชันของ Google

5
ฉันจะรวมจดหมายจาก Google Spreadsheet ไปยังเอกสาร Google ได้อย่างไร
ด้วย Microsoft Excel และ Microsoft Word ทำให้ง่ายต่อการรวมแถวจากสเปรดชีตเข้ากับหน้าในไฟล์ Word นี่เป็นประเพณีที่ใช้ในการส่งจดหมาย ฉันจะทำเช่นเดียวกันกับ Google ไดรฟ์ / Google เอกสารได้อย่างไร มีเทมเพลตมากมายที่ให้จดหมายเวียนสเปรดชีตต่ออีเมล: ฉันจะทำจดหมายเวียนกับ Gmail ได้อย่างไร แต่นั่นไม่ใช่สิ่งที่ฉันตามมา

3
จะบันทึกตัวแปรชั่วคราวในสูตรของ Google ชีตได้อย่างไร
ฉันกำลังพยายามสร้างสูตรในสเปรดชีตของ Google ซึ่งมีลักษณะดังนี้: if (x < 0, x + 1, x) มันหมายความว่าถ้าxมีขนาดเล็กกว่า0ผลตอบแทนผลตอบแทนอื่นx + 1x แต่ตัวเองคือการแสดงออกเช่นx A1 + B1ดังนั้นฉันจึงลงเอยด้วย: if ((A1 + B1) < 0, (A1 + B1) + 1, (A1 + B1)) ฉันจะบันทึกนิพจน์(A1 + B1)ลงในตัวแปรชั่วคราวเพื่อxที่จะทำสิ่งนี้ได้อย่างไร? : x = (A1 + B1); if (x < 0, x + 1, x); นิพจน์ปัจจุบันในสเปรดชีตของฉันมีลักษณะดังนี้: …

3
แยกข้อความลิงค์และ URL จากเซลล์ไฮเปอร์ลิงก์
สมมติว่าฉันมีไฮเปอร์ลิงก์ในเซลล์ A1: =hyperlink("stackexchange.com", "Stack Exchange") ที่อื่นในแผ่นงานฉันต้องการมีสูตรที่ได้รับข้อความลิงก์และ URL จาก A1 แยกต่างหาก ฉันพบวิธีรับข้อความลิงก์: =""&A1 (การต่อข้อมูลกับสตริงว่าง) ส่งคืน "การแลกเปลี่ยนสแต็ก" ซึ่งไม่ได้เชื่อมโยง วิธีรับ URL (stackexchange.com)

2
ใน Google Spreadsheet ให้ค้นหาว่าสูตรใดอ้างอิงถึงค่าที่กำหนด
ฉันต้องการค้นหาว่าเซลล์ใดมีการอ้างอิงสูตรในสเปรดชีตขนาดใหญ่ ฉันกำลังมองหาวิธีที่จะทำสิ่งที่ชอบ OpenOffice เครื่องมือ> นักสืบ> ติดตามผู้ติดตาม และ แก้ไข> ค้นหาและแทนที่> ค้นหาในสูตร หรือวิธีการสร้างทริกเกอร์ใน GAS ที่ถูกเรียกเมื่อมีการอ้างอิงค่าเซลล์ที่กำหนดและสามารถระบุแหล่งที่มาของการอ้างอิง

3
การอ้างอิงเซลล์ด้วยการจัดรูปแบบสี
เป็นไปได้หรือไม่ที่จะอ้างอิงเซลล์ใน Google ชีตเพื่อให้เซลล์ที่ได้รับการแสดงยังแสดงโดยใช้การจัดรูปแบบข้อความและสีของเซลล์เดียวกัน =A1 จะอ้างอิงค่าของเซลล์เท่านั้น แต่ถ้าเซลล์นั้นมีพื้นหลังสีแดงและข้อความสีขาวฉันก็อยากจะคัดลอกเช่นกัน ฉันเรียนวิธีแก้ปัญหาสูตรที่มีอยู่มากกว่าสคริปต์ ถ้าใช้แน่นอน

4
สคริปต์สเปรดชีตของ Google เอกสารมีวิธีใดบ้าง
ฉันมีสเปรดชีตที่ซับซ้อนจริงๆใน Google เอกสารและในขณะที่ใช้งานได้ความสามารถในการเขียนสคริปต์ได้เล็กน้อย (à VBA ใน Microsoft Office) จะทำให้มันสะอาดขึ้นมาก ฉันได้ยินมาว่าสิ่งนี้สามารถทำได้ใน Google Apps แต่ฉันไม่พบมันใน Google เอกสาร เป็นไปได้ไหม หรือนี่เป็นสิ่งเดียวที่ Office สามารถทำได้

3
Google ชีตแบ่งเซลล์หลายบรรทัดเป็นแถวใหม่ (+ ซ้ำรายการแถวโดยรอบ)
ฉันกำลังรวบรวมฐานข้อมูลของข้อมูลที่อยู่ธุรกิจรวมถึงพนักงานคนสำคัญสำหรับแต่ละธุรกิจ สเปรดชีตของ Google ที่ฉันได้รับสำหรับโครงการนี้มีคอลัมน์สำหรับ 'พนักงานหลัก' (ในคอลัมน์ B) โดยมีชื่อพนักงานคีย์หลายคนที่ระบุไว้ในเซลล์เดียวกันโดยคั่นด้วยตัวแบ่งบรรทัด (เช่น CHAR (10)) มีหนึ่งธุรกิจต่อแถว จำนวนบรรทัดในเซลล์ 'พนักงานคีย์' จะแตกต่างกันไปในแต่ละแถว แผ่นงานเริ่มต้นของฉันมีลักษณะเช่นนี้: ฉันต้องทำสิ่งต่อไปนี้เพื่อปรับแต่งชีตนี้: แยกแต่ละเซลล์ 'พนักงานคีย์' หลายบรรทัดดังนั้นชื่อพนักงานคีย์แต่ละคนจะปรากฏในแถวของตัวเอง ต้องการให้แทรกแถวใหม่ใต้แถวเดิม ทำซ้ำข้อมูลจากเซลล์อื่นทั้งหมดในแถวเดิม (เช่นจากคอลัมน์ A & C: E) เพื่อให้แต่ละแถวใหม่มีข้อมูลเต็มรูปแบบสำหรับแต่ละธุรกิจ ฉันต้องการกระบวนการอัตโนมัติ - ฉันมีธุรกิจประมาณ 1,000 แห่งในการดำเนินการดังนั้นจึงไม่สามารถทำได้ด้วยขั้นตอนที่ต้องทำด้วยตนเอง แผ่นควรมีลักษณะเช่นนี้: การใช้=TRANSPOSE(SPLIT(B1,CHAR(10)))เห็นได้ชัดว่าเป็นเพียงส่วนหนึ่งเท่านั้น - มันไม่ได้แทรกแถวใหม่และไม่ได้ทำซ้ำรายการคอลัมน์โดยรอบ ความช่วยเหลือทั้งหมดได้รับการยอมรับอย่างสุดซึ้ง!

4
จะส่งออก / นำเข้าสคริปต์ของ Google Apps เป็นไฟล์ลงในสเปรดชีตใหม่ได้อย่างไร
ฉันกลัวว่านี่อาจเป็นคำตอบที่ชัดเจน แต่ฉันก็ล้มหัวและไม่สามารถหามันเจอ! เมื่อสร้างสเปรดชีตใหม่เราได้อย่างง่ายดายสามารถสร้างสคริปต์ภายในมัน ผมชอบที่จะเรียกมันว่าแมโคร แต่เมื่อฉันสร้างสเปรดชีตที่ใหม่กว่าฉันไม่สามารถหามาโครที่ดีได้เลย! ฉันเห็นจริง ๆ แล้วว่าเราอาจเผยแพร่ / ส่งไปยังแกลเลอรีได้ แต่นั่นไม่ใช่เรื่องส่วนตัว แล้วก็มีห้องสมุด "ทางออก"แต่มันก็ซับซ้อนกว่าการเผยแพร่ นอกจากนี้ฉันไม่แน่ใจว่าจะอนุญาตให้แชร์กับบัญชีอื่น ฉันแค่ต้องการบันทึกไฟล์และนำกลับมาใช้ใหม่ตามต้องการโดยไม่จำเป็นต้องคัดลอกและวางและเปลี่ยนชื่อ เป้าหมายของฉันที่นี่คือการแชร์สคริปต์และใครก็ตามที่จะใช้มันไม่ใช่โปรแกรมเมอร์ นี่ต้องง่ายจริงๆ! ข้อมูลเชิงลึกใด ๆ

1
เพิ่มทริกเกอร์สคริปต์ใน Google ชีตที่จะทำงานในแอพมือถือ Android
ฉันมีแผ่นงาน Google ที่มีสคริปต์ที่ควรเรียกใช้เมื่อคลิกปุ่ม วิธีที่แนะนำในการทำเช่นนี้ (เท่าที่ฉันสามารถบอกได้) คือการแทรกรูปภาพแล้วแนบสคริปต์กับภาพที่เป็นปัญหา ทำงานได้ดีตราบใดที่ฉันเปิดแผ่นงานบนเดสก์ท็อปของฉัน อย่างไรก็ตามถ้าฉันเปิดแผ่นงานในแอป Android แผ่นงาน Google รูปภาพก็ไม่ปรากฏ เท่าที่ฉันสามารถบอกได้ว่าพฤติกรรม (ขาด) นี้ไม่ได้มีการบันทึกไว้ที่ใด แต่ฉันพบคนจำนวนมากที่มีปัญหาเดียวกัน ฉันสงสัยว่าฉันจะหลีกเลี่ยงปัญหานี้ได้อย่างไร ฉันพลาดสิ่งที่ชัดเจนซึ่งจะทำให้ภาพของฉันปรากฏในแอพ Android หรือไม่? หรือมีวิธีง่ายๆในการเพิ่มทริกเกอร์สคริปต์ในแผ่นงานที่จะทำงานบนมือถือ?

1
วิธีสร้างการผูกหรือคีย์ลัดที่ผู้ใช้กำหนดเพื่อเรียกใช้ App Scripts ใน Google Docs
คำถามนี้ใช้กับ Google เอกสารโดยเฉพาะไม่ใช่ Google Spreadsheets (แต่ถ้าคำตอบนั้นใช้ได้กับทั้งคู่จะดีกว่าทั้งหมด) Google เอกสารมีในตัวแป้นพิมพ์ลัดสำหรับ Google Docs ฉันต้องการกำหนดการเชื่อมโยงคีย์หรือทางลัดของตัวเองเพื่อให้สามารถเรียกใช้สคริปต์ที่ผู้ใช้กำหนดเองบนเอกสารโดยตรงโดยไม่ต้องใช้เมาส์ สำหรับสคริปต์ที่ฉันต้องการเรียกใช้บ่อยๆการมีคีย์หรือคีย์ลัดฉันสามารถกดได้โดยไม่ต้องใช้เม้าส์เพื่อเลื่อนเมนูและเรียกใช้สคริปต์ ฉันขัดจังหวะAPI ของ Google Apps Scriptแล้วและไม่พบการอนุญาตให้ปรับแต่งในระดับนี้ ฉันจะสรุปได้หรือไม่ว่า Google ไม่ได้รวมคุณสมบัตินี้ไว้? ฉันไม่ได้ตรวจสอบความเป็นไปได้ในการใช้ส่วนขยายเฉพาะ Firefox แต่นั่นจะเป็นแนวทางต่อไปของฉัน (เช่นGreasemonkey ) โปรดทราบว่านี่ไม่ใช่คำถามเดียวกับที่ถามใน ฉันจะสร้างแป้นพิมพ์ลัดที่กำหนดเองใน Google เอกสารได้อย่างไร .

2
แปลงข้อความทั้งหมดเป็น UPPERCASE ใน Google Spreadsheet
ฉันมีสเปรดชีตที่ฉันแบ่งปันกับผู้อื่นเพื่อรวบรวมข้อมูลบางอย่าง แต่ละคนเป็นเพียงแค่ (ควรจะ) ใส่อักขระเดียวในช่วงของเซลล์ ฉันจะทำให้เซลล์เหล่านั้นเปลี่ยนเป็นตัวพิมพ์ใหญ่ได้อย่างไร การใช้งาน=UPPER()ในแต่ละเซลล์นั้นดูเหมือนจะไม่ใช่การเริ่มต้นเพราะสิ่งนั้นจะถูกเขียนทับโดยสิ่งที่พวกเขาป้อน

1
แสดง URL ที่ใช้ในการแก้ไขคำตอบจากแบบฟอร์ม Google ใน Google Spreadsheet โดยใช้สคริปต์
ฉันกำลังพยายามทำให้ URL การแก้ไขสำหรับฟอร์ม Google ปรากฏขึ้นโดยอัตโนมัติในการตอบสนอง Google ชีตที่แนบมา ฉันเคยเห็นสิ่งนี้มาแล้วและต้องการใช้งาน แต่ฉันมีปัญหาในการพยายามที่จะวางสคริปต์ ฉันได้ลองใส่ไว้ในเครื่องมือแก้ไขสคริปต์ใน Google Spreadsheet ที่ฉันต้องการให้ URL ปรากฏ แต่ฉันไม่แน่ใจว่าจะไปจากที่นั่นได้อย่างไร ในเครื่องมือแก้ไขสคริปต์ฉันพยายามทดสอบเป็นส่วนเสริม แต่นั่นไม่ได้ผล ฉันมีประสบการณ์เล็กน้อยกับสคริปต์และเครื่องมือแก้ไขสคริปต์ใน Google ชีต ในฐานะที่เป็นโน้ตสุดท้ายฉันใช้ Add-on ตัวอื่นที่เรียกว่า AutoCrat ใน Google Spreadsheet เดียวกัน

2
สคริปต์เพื่อเปลี่ยนสีข้อความแต่ละรายการภายในเซลล์
ฉันมีสเปรดชีตของ Google ที่มีชื่อพนักงานนับร้อยสำหรับกำหนดเวลา แต่ละเซลล์มีหลายชื่อภายในเซลล์นั้นที่มีลักษณะดังนี้: First Last First Last First Last First Last First Last ชื่อหลายชื่อเป็นรหัสสีแดงในขณะที่ชื่ออื่นยังคงเป็นสีดำ ฉันกำลังใช้สคริปต์เพื่อลบบรรทัดใหม่พิเศษเพื่อย่อชื่อ (ส่วนใหญ่จะถูกลบออกโดยใช้การค้นหา / แทนที่สำหรับสิ่งต่าง ๆ เช่นวันหยุดส่งผลให้ขึ้นบรรทัดใหม่เปล่า): First Last First Last First Last First Last First Last ปัญหาคือว่าเมื่อสคริปต์นี้ทำงานชื่อสีแดงมีการเปลี่ยนแบบอักษรของพวกเขาเป็นสีดำ ฉันไม่สามารถหาวิธีเขียน a for loop เพื่อเปลี่ยนแต่ละบรรทัดภายในเซลล์กลับเป็นสีแดงได้ ฉันลงท้ายด้วยข้อความทั้งหมดในเซลล์เป็นสีแดงหรือรหัส HTML ที่ระบุว่าควรเป็นสีแดง มีความคิดเห็นเกี่ยวกับวิธีการทำงานนี้หรือไม่?

3
ส่งผ่านช่วงในฟังก์ชันที่กำหนดเองของสคริปต์ Google Apps โดยไม่ใช้สัญลักษณ์ A1
ฉันยังใหม่กับสคริปต์ของ Google Apps และฉันต้องการสร้างฟังก์ชั่นสำหรับสเปรดชีตที่รวมค่าเซลล์เมื่อเซลล์มีคุณสมบัติตรงตามเกณฑ์ที่กำหนดเช่นสีพื้นหลัง นอกจากนี้ฉันต้องการส่งช่วงเป็นอาร์เรย์และไม่ใช้สัญลักษณ์ A1ด้วยเหตุผลดังต่อไปนี้ ผมพบว่าฟังก์ชั่นที่ใช้สัญกรณ์ a1 การที่นี่ ปัญหาคือเมื่อฉันมีมันในเซลล์ที่กำหนด =sumWhereBackgroundColorIs("white", "A1:A10") และฉันคัดลอกค่าไปยังเซลล์ที่อยู่ติดกันด้านขวาผลลัพธ์จะกลับมาอีก = sumWhereBackgroundColorIs ("white", "A1: A10" ) ในขณะที่ฉันต้องการ = sumWhereBackgroundColorIs ("สีขาว", "B1: B10" ) มิฉะนั้นฉันมักจะแก้ไขอาร์กิวเมนต์การป้อนข้อมูลด้วยตนเองและฉันต้องการหลีกเลี่ยงสิ่งนี้เนื่องจากฉันจะใช้ฟังก์ชั่นนี้อย่างกว้างขวาง ดังนั้นฉันได้ลองผ่านช่วงเป็นอาร์เรย์ของค่าโดยใช้ =sumIfBgColor(#ffffff, A1:A10) function sumIfBgColor(color, range){ var x = 0; for(var i = 0; i < range.length; i++){ for(var j = 0; j …

7
มีวิธีการเชื่อมโยงคำถามสไตล์ "เลือกจากรายการ" ในแบบฟอร์ม Google กับรายการข้อมูล (เช่นในสเปรดชีต) หรือไม่
มีวิธีการเชื่อมโยงคำถามสไตล์ "เลือกจากรายการ" ในแบบฟอร์มไปยังรายการข้อมูล (เช่นในสเปรดชีต) หรือไม่ ซึ่งหมายความว่าเมื่อมีการเพิ่มตัวเลือกใหม่ลงในรายการในสเปรดชีต (หรือที่อื่นก็อาจเป็นไปได้ที่จะโฮสต์รายการ) พวกเขาจะปรากฏโดยอัตโนมัติเป็นตัวเลือกเพื่อเลือกในแบบฟอร์มในอนาคต ในกรณีของฉันมันหมายความว่าผู้ตอบแบบสอบถามกรอกข้อมูลในแบบฟอร์มจะสามารถเลือกอาสาสมัครที่มีอยู่ในช่วงการเป็นอาสาสมัครนั้นจากรายการที่ครอบคลุมของอาสาสมัคร (แทนที่จะพิมพ์ในแต่ละชื่อ) แต่เนื่องจากอาสาสมัครเข้าร่วมเป็นระยะ ๆ จะเป็นประโยชน์อย่างมหาศาลหากสามารถเพิ่มสิ่งเหล่านี้ในตัวเลือกในรายการโดยอัตโนมัติแทนที่จะเพิ่มตัวเลือกใหม่ด้วยตนเองทุกครั้ง ฉันไม่รู้ว่ามันเป็นไปได้หรือไม่ แต่ฉันจะขอบคุณถ้าใครสามารถแนะนำวิธีการทำมัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.