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

有很多很好的理由,您应该使用基于云的Google文档而不是基于应用程序的文字处理应用程序(例如Microsoft Word)。其中最重要的一个就是您可以使用功能强大的Google脚本创建一些非常有用的自动化程序。

以下三个脚本可让您根据用户提示构建文档,将Google Analytics(分析)导入Google Doc报表,以及从Google表格文件创建文档。

1。使用提示来构建文档

如果您经常发送同一封电子邮件,自动文档模板可以真正帮助您节省时间。这可能是给经理的每月销售报告,或者是同事的每周更新。您通常可以使用文档模板和Google脚本将您撰写的所有内容自动化。

第一步是创建文档模板。这样做就像创建Google文档一样简单。对于您要填充的单词,只需用两个 ## 符号将它们括起来,如下例所示。

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

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

在编辑器窗口中,删除其中的代码,然后将其替换为以下脚本。

此脚本将在文档打开时调用提示,创建一个新文件,并以销售人员的姓名和标题中的今天为准。然后,它将使用您输入的信息填写模板字段。

function myFunction() {  // Display a dialog box for each field you need information for.    var ui = DocumentApp.getUi();  //var response = ui.prompt('Enter Name', 'Enter sales person's name', ui.ButtonSet.OK);  var nameResponse = ui.prompt('Enter sales persons name');  var client1Response = ui.prompt('Enter client 1');  var sales1Response = ui.prompt('Enter sales 1');  var client2Response = ui.prompt('Enter client 2');  var sales2Response = ui.prompt('Enter sales 2');  var client3Response = ui.prompt('Enter client 3');  var sales3Response = ui.prompt('Enter sales 3');  var commissionResponse = 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(nameResponse.getResponseText() + 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##', nameResponse.getResponseText());  body.replaceText('##client1##', client1Response.getResponseText());  body.replaceText('##sales1##', sales1Response.getResponseText());   body.replaceText('##client2##', client2Response.getResponseText());  body.replaceText('##sales2##', sales2Response.getResponseText());    body.replaceText('##client3##', client3Response.getResponseText());  body.replaceText('##sales3##', sales3Response.getResponseText());  body.replaceText('##commission##', commissionResponse.getResponseText());   }

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

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

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

下一步,单击运行图标以测试其功能。

首次运行脚本时,可能需要批准以下脚本的权限您的Google帐户来运行脚本。

回到模板文档中,您会看到一个又一个弹出的提示窗口。

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

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

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

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

向下滚动并单击保存,您就完成了。

2。将Google Analytics(分析)导入文档报告中

无论您是拥有网站还是为拥有网站的人工作,经常需要测量网站的访问量和性能,并将其提供在格式化的报告中。

您可以使用与上一节相同的模板方法,从Google Analytics(分析)导出网站数据并将其输出到格式正确的Google文档报告中。

首先,像您一样创建报告模板在上一节中做了。在此示例中,将设置模板以提供过去一周的总用户,会话和综合浏览量。

下一步,使用与上一节相同的步骤进入Google文档脚本编辑器。<

按照以下步骤启用对Google Analytics(分析)数据的访问。

  • 在脚本编辑器窗口中,选择资源,然后选择高级Google服务
  • 单击 Google Analytics API 旁边的开/关
  • 在对话框下方,单击 Google Cloud Platform API仪表板链接
  • 在Cloud Platform窗口中,单击启用API和服务
  • 搜索 Analytics strong>,然后单击 Analytics API
  • 单击 Enable 按钮为您的脚本启用此API
  • 返回进入脚本编辑器窗口,然后点击确定以关闭“高级Google服务"窗口
  • 现在,您已启用与Google Analytics(分析)API的集成,现在可以自动创建报告了。

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

    function myFunction() {  var tableId = 'ga:<your-analytics-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:sessions,ga:pageviews',      {'dimensions': 'ga:date'});  var data = [];  var totals = results.totalsForAllResults;    for (metricName in totals) {      data.push(totals[metricName]);  }    var users = data[0]  var sessions = 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('##sessions##', sessions);  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替换为在Google Analytics(分析)中为您的网站显示的ID。

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

    点击运行图标以测试其功能。

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

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

    最后,您只需将脚本设置为每周运行。

    在Google脚本编辑器窗口中,点击编辑当前项目的触发器

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

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

    3。通过Google表格创建文档

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

    如果您发现自己经常这样做,可以通过将Google表格与Google文档集成来节省时间。对于此脚本,您将在Google表格中使用Google脚本编辑器,因为这是数据的来源。

    首先,您将像创建模板销售文档一样在本文的第一部分中进行了操作,嵌入了由 ## 符号包围的变量。

    这些报告的数据将来自您的Google表格电子表格,看起来可能有些类似像此示例一样。

    要在Google表格中创建脚本,请点击工具菜单项,然后点击脚本编辑器。<

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

    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脚本编辑器窗口中,单击磁盘图标以保存脚本。

    单击运行图标以测试其功能。

    请记住,首次运行脚本时,需要批准权限才能访问您的Google帐户。

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

    可以循环浏览工作表标签并为团队中的每个销售人员创建新的销售输出文档。

    为什么不使用上面的脚本来看看是否可以实现?

    更多Google脚本

    Google文档似乎是一个简单的文字处理程序,但是如您所见,当您集成Google Analytics(分析)时,它将使该云应用程序的功能成倍增加。

    模板Google文档中的内容是所有这些工作。您会惊讶地发现,在Google文档中使用模板可以使您所做的一切都更加高效。试试看,并在添加时添加自己的创意Google脚本自动化。

    请记住,您还可以在表格中使用脚本。想要一些例子吗?看看这些可以使Google表格功能更强大的Google脚本。

    标签: Google Docs Google Script Google表格