【问题标题】:Email pdf of specific sheet name with google apps script使用谷歌应用脚​​本通过电子邮件发送特定工作表名称的 pdf
【发布时间】:2016-03-13 20:02:53
【问题描述】:

我正在尝试使用谷歌应用程序脚本发送 pdf,虽然这可以获取 pdf

var ss = SpreadsheetApp.getActiveSpreadsheet();
var blob=ss.getAs('application/pdf').setName('report.pdf')

如果我尝试输入特定的工作表名称,它将不起作用,如

var ss = SpreadsheetApp.getActive().getSheetByName('Class');

它会为 getAs 引发错误

有人知道如何执行此操作,以便我可以获取特定的工作表名称吗?请注意,我需要工作表名称,因为这是由触发器完成的,如果没有工作表名称,则脚本会失败。

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    @Allen,我认为您不能通过调用活动表直接打印。一个不错的解决方法是选择活动工作表并将其复制到新电子表格并使用 getAs()。

    getAs(contentType)

    将此对象内的数据作为转换为 Blob 的对象返回 指定的内容类型。此方法将适当的扩展添加到 文件名——例如,“myfile.pdf”。但是,它假设 最后一个句点(如果有)之后的文件名的一部分是 应该替换的现有扩展。最后, “ChristmasList.12.25.2014”将变为“ChristmasList.12.25.pdf”。

    并在使用 getAs 后添加:

    getBytes()

    获取存储在此 blob 中的数据。

    这里是示例代码:

    var pdf = newSpreadsheet.getAs('application/pdf').getBytes();
    

    那是基于这个github code example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-26
      • 2020-04-22
      • 1970-01-01
      相关资源
      最近更新 更多