大家好,今天就是我们铁人赛的最後一天了,想要在今天帮大家做个整理表,这样也比较好找资料。如果有兴趣,心路历程在最後面,或许可以给想要写 GAS 的人参考。
考量到大部分的人没有追连载,到这边应该是想要快速找哪边可以帮助你。这很重要没错,但也请要先了解一下 Google Apps Script 的使用情境之一——
这边是假设一搬人行政文书使用的流程优化,如果本身就是要开发用 GAS 写出来的产品那就另当别论
另外,在开发之前,请确认三件事——
首先,这几天 Google Apps Script 的清单如下——
主要内容有提到 GAS 的基本介面、Trigger 与 debug 方式之一(Log)。
日期 | 主题 | 内容概述 |
---|---|---|
D1 | 谁适合使用 Google Apps Script (GAS)呀? | 基本范围与文章目标族群界定 |
D2 | Google Apps Script (GAS) 环境设定与设定打包 | 基本操作介面熟悉与功能大致范围界定 |
D3 | 如何透过 Google Apps Script 的 Trigger 来建立一个自动开启、调整与关闭的 Google 表单? | Trigger 介绍 |
主要有提到怎麽样创造、读取、复制与更动表单。更细节有讲到自动开启或关闭(Trigger)、连结 Google Sheet 并寄出 Email 和连动 Google Calendar
日期 | 主题 | 内容概述 |
---|---|---|
D3 | 如何透过 Google Apps Script 的 Trigger 来建立一个自动开启、调整与关闭的 Google 表单? | 创造 Google From 并搭配 Trigger 的自动化案例 |
D4 | 如何透过 Google Apps Script 来整合 Google Form / Google Sheet 并自动寄出客制的 Email? | Google 表单後续流程接续自动化寄信的案例 |
D11 | (ㄧ)复制并客制你的 Google Form | 用 GAS 依照范本写 Google Form 的案例 |
D12 | (二)大幅度客制你的 Google Form | 用 GAS 依照范本客制 Google Form 的案例,有针对细部元素特别说明 |
D13 | (三)一次搜集很多 Google Form 内的回应 | 用 GAS 搜集多份 Google Form 内回应的案例 |
Gmail 的部分,主要是有寄信、依据分类寄出客制化信件、寄出 HTML 与跟 Google Calendar 连动,最後还有股票价格通知信。
日期 | 主题 | 内容概述 |
---|---|---|
D4 | 如何透过 Google Apps Script 来整合 Google Form / Google Sheet 并自动寄出客制的 Email? | 针对不同收件人的寄件方式介绍 |
D5 | 如何用 Google Apps Script 搭配 HTML 客制 Google 表单的回应信件? | 整合 Google Form 与信件的案例 |
D6 | 如何用 Google Apps Script 将 Google 表单收到的时间同步在 Google Calendar 上? | 将 Google Form 透过 Sheet 整合一份 Calendar 的案例 |
D7 | 如何用 Google Apps Script 将 Google 表单的回应即时同步在多个行事历上? | 将 Google Form 透过 Sheet 整合多份 Calendar 的案例 |
D25 | (二)结合股票价格通知与信件 | 透过 Gmail 寄送 Google Sheet 中资料提示的案例 |
Google Calendar 的部分,主要都是跟 Google Sheet 结合,不管是列出事件或是生成新的行程。
日期 | 主题 | 内容概述 |
---|---|---|
D6 | 如何用 Google Apps Script 将 Google 表单收到的时间同步在 Google Calendar 上? | 将 Google Sheet 中的资料同步到一份 Google Calendar 的案例 |
D7 | 如何用 Google Apps Script 将 Google 表单的回应即时同步在多个行事历上? | 将 Google Sheet 中的资料同步到多份 Google Calendar 的案例 |
D8 | 如何用 Google Apps Script 将 Google Calendar 上的事件与更新全部列出到 Google Sheet 上? | 将 Google Calendar 上的资料同步到 Google Sheet 上的方式 |
Google Drive 部分,则有列出 Google Drive 的资料夹与档案的相关资讯(名称、ID、大小、预览与权限等)、更改名称与转移权限、移动与删除档案。
日期 | 主题 | 内容概述 |
---|---|---|
D9 | (一)列出所有档案 ID 与相关资讯 | 给予 Google Drive 资料夹 ID 并读出里面资讯的案例 |
D10 | (二)自动列出所有档案并设定权限 | 给予 Google Drive 资料夹 ID 并读出里头档案权限并更改 |
D22 | (三)一次看完所有档案的预览 | 将档案的预览图透过 Google Slides 一次性地显现出来的案例 |
Google Docs 的部分,有提到架构的讲解、内容元素的层级,以及怎麽创造文件、依据范本复制文件与内部物件的读取、客制与删除。
日期 | 主题 | 内容概述 |
---|---|---|
D14 | (一) 以 NDA 为例的大架构与简单复制 | Google Docs 的基本架构,与从 Google Sheet 中撷取资料并复制范本更改多份 Google Docs 的案例(Header / Footer / Name) |
D15 | (二)快速生出大量寄件信封资料 | 从 Google Sheet 中撷取资料并复制范本更改多份 Google Docs 的案例(Body Content) |
D16 | (三)Element 的读取与创造 | 用 GAS 读取与创造 Google Docs 内部一个个段落、表格与图片等的案例 |
D17 | (四)Element 的删除与层级关系 | Google Docs 的层级关系,以及用 GAS 删除与精细选择 Google Docs 内部一个个段落、表格与图片等的案例 |
D18 | (五)Element 的更新 | 针对 Google Docs 中已有物件内容进行更新的方式 |
D19 | (六)更改特定内容格式的 Attribute 操作技巧 | 针对 Google Docs 中的物件属性(外型)调整的方式 |
Google Slides 的部分,则是从简报的架构、创造与复制范本开始,有讲到更动简报的内容、更改或读取特定内容以及新增与放入图表等。
日期 | 主题 | 内容概述 |
---|---|---|
D20 | (一)架构拆解与更改文字 | Google Slides 的架构,以及如何针对已有的内容文字进行读取与更改的案例 |
D21 | (二)自动化爲铁人赛的每一篇贴文生封面图 | 依照范本投影片更改并生成多份 Slide 的案例 |
D22 | (三)一次看完所有档案的预览 | Google Slide 与其他资料源如 Google Drive 等连动的案例 |
D23 | (四)ㄧ次抓出所有简报中的「特定文字」与备注 | Google Slide 中针对特殊元件、文字进行读取并放到 Google Sheet 上的案例 |
D24 | (ㄧ)自动化创造图表 | 在 Google Slide 上放入 Google Sheet 中图表的案例 |
Google Sheet 的部分,除了创造、复制之外,就是有取得很多试算表内的资料,并进一步处理像是创造图表,或是将结果用信件做通知。
日期 | 主题 | 内容概述 |
---|---|---|
D4 | 如何透过 Google Apps Script 来整合 Google Form / Google Sheet 并自动寄出客制的 Email? | 从 Google Sheet 中寄信给不同收件人的案例,最基础的 Google Sheet 架构在这一篇 |
D6 | 如何用 Google Apps Script 将 Google 表单收到的时间同步在 Google Calendar 上? | 从 Google Sheet 中同步 Google Calendar 的案例 |
D7 | 如何用 Google Apps Script 将 Google 表单的回应即时同步在多个行事历上? | 从 Google Sheet 中同步到多份 Google Calendar 的案例 |
D8 | 如何用 Google Apps Script 将 Google Calendar 上的事件与更新全部列出到 Google Sheet 上? | 在 Google Sheet 上抓到 Google Calendar 上的资料 |
D14 | (一) 以 NDA 为例的大架构与简单复制 | 用 Google Sheet 的资料创造 Google Docs 的案例(Header / Footer / Name) |
D15 | (二)快速生出大量寄件信封资料 | 用 Google Sheet 的资料创造 Google Docs 的案例(Body Content) |
D23 | (四)ㄧ次抓出所有简报中的「特定文字」与备注 | 用 Google Sheet 列出 Google Slide 中的特殊物件上的案例 |
D24 | (ㄧ)自动化创造图表 | 图表讲解与用 Google Sheet 创造图表放到 Google Slide的案例 |
D25 | (二)结合股票价格通知与信件 | 将 Google Sheet 中的资料更新/提示寄送的案例 |
D26 | (三)大量复制试算表并留下连结 | 将 Google Sheet 的资料表复制给不同使用者的案例(在「要整理面试官打的分数」的情境下) |
D27 | (四)蒐集大量试算表中的回应 | 将多份 Google Sheet 中的资料整理到一份的案例(在「要整理面试官打的分数」的情境下) |
日期 | 主题 | 内容概述 |
---|---|---|
D5 | 如何用 Google Apps Script 搭配 HTML 客制 Google 表单的回应信件? | 用 GAS 寄出 HTML 的案例 |
D28 | (ㄧ) 变成可以 Add-On 似的 UI | 将 GAS 的功能变成可以按的 UI |
D29 | (二)变成 WebApp / HTML Output | 将 GAS 的功能变成可以互动的 HTML |
D30 | 三十天 Apps Script 旅程的总整理 | 今天这篇总整理 |
好,接下来则是一些心路历程,分享给想踏入 GAS 坑的夥伴。
回看这三十天铁人赛的文章,平均每篇费时两个小时,字数在五千上下,要说的话就是,超级累啊啊啊啊啊啊。
过程中一度很想放弃,除了在看到 D20 前後时的文章大概都只有十来人阅读时,加上工作都忙到八九点,回家都十点了再加两个小时,总是压死线写出,中间也发生了不少是,像是这篇就是带家人到急诊室时打的,切记勿穿短裤拖鞋到急诊室,超冷。以及忙碌中对大纲不一定有灵感,中间有几度迷航,甚至出文章的品质下降,都是假日回来优化。但所幸有个转折,就是 D15 快速生出大量寄件信封资料 这篇。因为那时候刚好同事需要帮忙,就用这样的范本协助慢慢复制贴上的过程,看到能帮同事省时间,是蛮开心的。这篇同时也是自己最喜欢的文章。
不过,GAS 真的挺方便的,像是今天内容的 Markdown 表格其实就是用 GAS 帮我省了些时间。
三十天的过程中,主要的进步有几份——
尽管每次回头看自己写的文章,总是会想揍自己,大概跟回看国高中作文差不多等级,或是在看自己之前的 Code 那样。所以也帮自己下了几个坑——
本身来说,我觉得用 GAS 对有需求的人来说,算是个简单上手的方式,Google 的产品都蛮有品质的,看到後端的程序码也往往会令人赞叹,甚至会发现些工程师彩蛋功能像是 developer metadata。过程算是会有些乐趣,不过如果能早点发想完大纲等,就不会其实白天如坐针毡,脑袋不是会飞去想到底要写什麽。总之,爬这座山的内容并不难,难的是每天要用合适的案例传达给读者。
那以上就是我们 GAS 的三十天,想谢谢每一位读者。铁人赛也到了终点,希望这些内容对大家有所帮助。如果还有问题,透过留言之外,也可以到 Facebook Group,想开很久这次铁人赛才真的开起来,欢迎来当 Founding Member。如果不想错过可以订阅按赞小铃铛(?),也欢迎留言跟我说你还想知道什麽做法/主题。我们有缘再见。
<<: 追求JS小姊姊系列 Day15 -- 方函式的能力展现:认识生成器,工具人更神气(下)
大家好! 欢迎搭乘 JavaScript 观光巴士。 起程前,我们先用一个小测验作为旅程的序幕吧! ...
前言 忘记一天要发一篇,被自己笨死~~虽然中断了但我还是把它完成吧。 今天一样继续HTML语法吧 超...
这次练习的题目是做出商城中产生订单的功能 功能主要需求:产生订单 (目前一笔订单只能买一个品项)、库...
创建App-简单更改密码&教师代码 由於App的简单更改密码&教师代码的延伸界面没有...
本文介绍 Projucer 建立的 GUI Application 框架基本架构。框架(Framew...