3个令人印象深刻的google文档脚本,可自动执行文档

想简化那些重复的任务吗?下面介绍如何将Google脚本与具有出色结果的表单和文档集成。...

有很多好的理由可以使用基于云的谷歌文档,而不是基于应用程序的文字处理应用程序,如MicrosoftWord。最重要的一点是,您可以使用强大的Google脚本创建一些非常有用的自动化。

google-docs-scripts

下面有三个脚本,让您从用户提示构建文档,将Google Analytics导入Google文档报告,并从Google工作表文件创建文档。

1使用提示生成文档

如果您经常发送同一封电子邮件,自动文档模板确实可以帮助您节省时间。这可能像是给你的经理的每月销售报告,或是给同事的每周更新。你经常写的任何东西都可以通过文档模板和Google脚本自动完成。

第一步是创建文档模板。这样做就像创建一个Google文档一样简单。对于您要填写的单词,只需用两个###符号将其环绕,如下面的示例所示。

google docs template

在这个文档中,您可以创建一个在文档打开时运行的Google脚本。脚本将提示您输入文档中的每个元素。

要创建脚本,请单击“工具”菜单项,然后单击“脚本编辑器”。

docs script editor

在编辑器窗口中,删除其中的代码并用以下脚本替换它。

此脚本将在文档打开时调用提示,创建一个标题中包含销售人员姓名和今天日期的新文档。然后它将用您输入的信息填充模板字段。

function myFunction() { // Display a dialog box for each field you need information for. var ui = DocumentApp.getUi(); //var resp***e = ui.prompt('Enter Name', 'Enter sales person's name', ui.ButtonSet.OK); var nameResp***e = ui.prompt('Enter sales pers*** name'); var client1Resp***e = ui.prompt('Enter client 1'); var sales1Resp***e = ui.prompt('Enter sales 1'); var client2Resp***e = ui.prompt('Enter client 2'); var sales2Resp***e = ui.prompt('Enter sales 2'); var client3Resp***e = ui.prompt('Enter client 3'); var sales3Resp***e = ui.prompt('Enter sales 3'); var commissionResp***e = ui.prompt('Enter commission'); var date = new Date(); //Make a copy of the template file var documentId = DriveApp.getFileById('<your-template-id>').makeCopy().getId(); //Rename the copied file DriveApp.getFileById(documentId).setName(nameResp***e.getResp***eText() + date + ' Sales Report'); //Get the document body as a variable var body = DocumentApp.openById(documentId).getBody(); //Insert the entries into the document body.replaceText('##name##', nameResp***e.getResp***eText()); body.replaceText('##client1##', client1Resp***e.getResp***eText()); body.replaceText('##sales1##', sales1Resp***e.getResp***eText()); body.replaceText('##client2##', client2Resp***e.getResp***eText()); body.replaceText('##sales2##', sales2Resp***e.getResp***eText()); body.replaceText('##client3##', client3Resp***e.getResp***eText()); body.replaceText('##sales3##', sales3Resp***e.getResp***eText()); body.replaceText('##commission##', commissionResp***e.getResp***eText()); }

用模板文档的文档ID替换上面脚本中的文档ID代码。

当您编辑模板文档时,您会发现这个嵌入在URL中。

document id

在Google脚本编辑器窗口中,单击磁盘图标保存脚本。

接下来,单击run图标测试它是否工作。

当您第一次运行脚本时,可能需要批准您的Google帐户的权限才能运行脚本。

回到模板文档中,您会看到一个接一个的弹出提示窗口。用要进入文档的数据填充字段。

google doc prompts

完成后,脚本将在您的Google Drive根文件夹中创建一个新文档,其中包含您输入的所有信息。

google docs new document

最后,您只需要设置脚本,以便每次打开模板文档时运行。

在Google脚本编辑器窗口中,单击编辑&gt;当前项目的触发器。

单击右下角的添加触发器按钮。确保“选择事件类型”处于打开状态。

on open trigger

向下滚动并单击Save,就完成了。

2将google ****ytics导入文档报告

无论你拥有一个网站,还是你为一个拥有网站的人工作,一个常见的要求是测量网站流量和性能,并在格式化的报告中提供。

您可以使用与上一节相同的模板方法从Google Analytics导出网站数据,并将其输出到格式良好的Google Docs报告。

首先,像上一节一样创建一个报表模板。在本例中,模板将被设置为提供过去一周的总用户、会话和页面浏览量。

****ytics report template

接下来,使用与上一节相同的步骤进入googledocs脚本编辑器。

通过以下步骤启用对谷歌分析数据的访问。

  1. 在脚本编辑器窗口中,选择资源,然后选择高级Google服务
  2. 单击Google Analytics API旁边的on/off
  3. 在对话框下方,单击Google云平台API仪表板链接
  4. 在云平台窗口中,单击EnableAPI和Services
  5. 搜索分析,然后单击Analytics API
  6. 单击启用按钮以启用脚本的此API
  7. 返回脚本编辑器窗口,然后单击“确定”关闭“高级Google服务”窗口

****ytics api

现在您已经启用了与Google分析API的集成,可以自动创建报表了。

在脚本编辑器代码窗口中粘贴以下代码。

function myFunction() { var tableId = 'ga:<your-****ytics-id>'; var startDate = getLastNdays(7); // 1 week ago. var endDate = getLastNdays(0); var date = new Date(); var results = Analytics.Data.Ga.get( tableId, startDate, endDate, 'ga:users,ga:sessi***,ga:pageviews', {'dimensi***': 'ga:date'}); var data = []; var totals = results.totalsForAllResults; for (metricName in totals) { data.push(totals[metricName]); } var users = data[0] var sessi*** = data[1] var pageviews = data[2] // Output to Google Doc. //Make a copy of the template file var documentId = DriveApp.getFileById('').makeCopy().getId(); //Rename the copied file DriveApp.getFileById(documentId).setName(date + ' Website Report'); //Get the document body as a variable var body = DocumentApp.openById(documentId).getBody(); //Insert the entries into the document body.replaceText('##startdate##', startDate); body.replaceText('##enddate##', endDate); body.replaceText('##users##', users); body.replaceText('##sessi***##', sessi***); body.replaceText('##pageviews##', pageviews);}function getLastNdays(nDaysAgo) { var today = new Date(); var before = new Date(); before.setDate(today.getDate() - nDaysAgo); return Utilities.formatDate(before, 'GMT', 'yyyy-MM-dd');}

用模板文档的文档ID替换上面脚本中的文档ID代码。同时用Google Analytics中为您的网站显示的ID替换分析ID。

在Google脚本编辑器窗口中,单击磁盘图标保存脚本。

单击run图标测试它是否工作。

当您第一次运行脚本时,您必须批准您的Google帐户的权限才能运行脚本。

运行该脚本将在您的Google Drive根文件夹中创建一个新文档,其中包含上周的所有网站性能信息。

automated ****ytics report

最后,您只需要设置每周运行的脚本。

在googlescripteditor窗口中,单击Edit和currentproject的触发器。

单击右下角的添加触发器按钮。将“选择事件源”更改为“时间驱动”。将基于时间的触发器的选择类型更改为周计时器。

google scripts weekly trigger

向下滚动并单击Save,您的脚本将每周运行一次,并创建新的周报。

三。从google工作表创建文档

有时您需要将电子表格中的信息转换为文档,例如开发报告或记录信息。

如果你发现自己经常这样做,你可以通过整合googlesheets和googledocs来节省时间。对于这个脚本,您将使用googlesheets中的googlescripts编辑器,因为这是数据的来源。

首先,您将创建模板销售文档,就像在本文的第一节中所做的那样,嵌入由#符号包围的变量。

google docs template

这些报告的数据将来自您的googlesheets电子表格,它可能类似于此示例。

google sheets data

要创建脚本,请在googlesheets中,单击Tools菜单项,然后单击scripteditor。

在编辑器脚本窗口中粘贴以下脚本。

function myFunction() { var date = new Date(); // Opens SS by its ID var ss = SpreadsheetApp.openById("<spreadsheet-document-id>"); var sheet = ss.getSheetByName('Sam'); // or whatever is the name of the sheet //Make a copy of the template file var documentId = DriveApp.getFileById('<template-document-id>').makeCopy().getId(); //Rename the copied file DriveApp.getFileById(documentId).setName('Sam ' + date + ' Sales Report'); //Get the document body as a variable var body = DocumentApp.openById(documentId).getBody(); var range = sheet.getRange("A2:B4"); body.replaceText('##name##', 'Sam'); for (var i=1; i<4; i++) { cell = range.getCell(i,1); client = cell.getValue(); body.replaceText('##client' + i + '##', client); cell = range.getCell(i,2); sales = cell.getValue(); body.replaceText('##sales' + i + '##', sales); }}

用模板文档的文档ID替换上面脚本中的文档ID。同样,用数据Google Sheet的ID替换Google Sheet ID。

在Google脚本编辑器窗口中,单击磁盘图标保存脚本。

单击run图标测试它是否工作。

请记住,当您第一次运行脚本时,您需要批准权限,以便它可以访问您的Google帐户。

当您运行脚本时,它将在您的Google Drive根文件夹中创建一个新文档,其中包含来自电子表格的所有销售数据。

sales data document

还可以在工作表选项卡之间循环,为团队中的每个销售人员创建新的销售输出文档。

为什么不玩一下上面的脚本,看看你能不能完成这个任务?

更多谷歌脚本

GoogleDocs看起来像一个简单的文字处理器,但是当你整合GoogleAnalytics时,你会发现它是这个云应用功能的倍增。

谷歌文档中的模板是所有这些工作的核心部分。你会惊讶于在googledocs中使用模板能让你做的每件事都更有效率。尝试一下,同时你也可以添加你自己的创造性的Google脚本自动化。

记住,您也可以在工作表中使用脚本。想举几个例子吗?看看这些谷歌脚本,可以使谷歌表更强大。

  • 发表于 2021-03-22 16:38
  • 阅读 ( 227 )
  • 分类:编程

你可能感兴趣的文章

谷歌文档(google docs)和谷歌硬盘(google drive)的区别

...法。这不同于之前版本的Google文档列表有限制。googledrive令人印象深刻的特性之一是能够在图片中找到文本。当所有的图片都带有通用标签时,这将帮助你找到你真正想要的东西。 googledrive可以被命名为一个单独级别的工具。个...

  • 发布于 2020-10-24 23:12
  • 阅读 ( 507 )

如何用photoshop脚本自动化photoshop

... 我们来分析一下这段代码的作用。当前的文档变量存储来自Photoshop的活动文档对象。使用app.activeDocument应用程序语法。如果没有打开文档运行Photoshop,此代码将引发异常。异常是代码停止执行的方法——如果没有...

  • 发布于 2021-03-13 07:15
  • 阅读 ( 277 )

如何在mac上创建令人印象深刻的页面文档和模板

在文字处理方面,MicrosoftWord仍然处于领先地位,尤其是在商业环境中。但这不是镇上唯一的游戏。许多Mac电脑的用户转向苹果的网页。 ...

  • 发布于 2021-03-15 14:17
  • 阅读 ( 155 )

尝试dropbox纸张的11个令人信服的理由

... 如果你觉得这一页白得令人讨厌,那你就无能为力了。好消息是你的话没有太多障碍。只需单击createnewdoc按钮(右上角的+图标)并开始编写。纸张会自动保存您键入的所有内容,它支持降价,...

  • 发布于 2021-03-17 10:08
  • 阅读 ( 179 )

linux下如何使用rclone备份google驱动

...one 默认情况下,rclone几乎肯定不会安装在Linux计算机上。令人高兴的是,有一个安装脚本可以在所有发行版上运行。安装过程使用curl。在用于研究本文的计算机上,Fedora31和Manjaro18.1.0已经安装了curl,但必须在Ubuntu18.04 LTS上安装c...

  • 发布于 2021-04-02 18:51
  • 阅读 ( 172 )

googlesheets初学者指南

...与微软office竞争。基于云的套件中包含的其他主要服务是文档(Word)和幻灯片(Powerpoint)。 相关:谷歌文档初学者指南 googlesheets在所有设备和平台上都是可用的;您所需要的只是一个互联网连接和一个web浏览器(或者,对于...

  • 发布于 2021-04-03 11:22
  • 阅读 ( 277 )

如何编写自动热键脚本

...终寻找要重新映射的热键。 热键和修改器 您可以在官方文档中找到AHK的修饰符的完整列表,但我们将重点介绍最有用(和最酷)的特性。 所有的修饰键都有一个字符的缩写。例如,#!^+分别是Windows、Alt、Control和Shift。您还可...

  • 发布于 2021-04-03 15:15
  • 阅读 ( 208 )

如何用脚本编辑器来增强你的google应用程序

...义菜单和对话框,编写自定义函数和宏,并构建扩展Google文档、工作表和幻灯片的附加组件。 什么是谷歌应用脚本(google apps script)? googleapps脚本是一个基于云的开发平台,用于创建定制的、轻量级的web应用程序。您可以直接...

  • 发布于 2021-04-03 16:11
  • 阅读 ( 209 )

使窗口始终位于窗口顶部的3种最佳方法

...小,它工作得很好,甚至当其他更高级的应用程序挣扎。令人印象深刻的是,一个自2004年以来一直没有更新过的小实用程序在13年后仍然可以很好地工作,这证明了这个程序的工作是多么干净。 无需安装任何额外内容:内置应...

  • 发布于 2021-04-07 08:11
  • 阅读 ( 161 )

如何从googlereader导出带星号的项目

...时候它只是垃圾,永远不会完成。显然,这是一个非常不令人满意的解决方案,读者权力的用户,因为它从来没有完成导入您的星号项目。如果你是一个超级用户,你有成千上万的星号项目要处理,导入它们作为书签是不会削减...

  • 发布于 2021-04-11 21:25
  • 阅读 ( 191 )
dr036578
dr036578

0 篇文章

相关推荐