小编Joh*_*ohn的帖子

使用Google Apps脚本将电子表格中的单个表格以pdf格式保存在特定文件夹中

我正在使用Google电子表格来准备发票,并且正在寻找一个简单的脚本,该脚本将发票所在的工作表保存在“发票”文件夹中,以建立档案。我从Stackoverflow和youtube上的众多贡献者那里“借用”了代码,并提出了一个有效的代码。我必须将发票复制到新创建的电子表格中,因为从电子表格类型中的一张纸上创建pdf似乎是不可能的。我还必须使用一段代码将pdf从根目录移动到“发票”文件夹。我唯一无法解决的问题是,第6行中创建的电子表格包含2张纸。一个空的和正确复制的一个。因此,创建的pdf包含2张纸,一张空白纸和一张正确纸。有人知道如何解决这个问题吗?顺便说一句,有时需要几分钟才能在文件夹中显示pdf。

下面是代码

function generatePdf(){
    //Create a temporary spreadsheet, to store the desired sheet from the spreadsheet in. 
    var originalSpreadsheet = SpreadsheetApp.getActive();
    originalSpreadsheet.setActiveSheet(originalSpreadsheet.getSheets()[4]);
    var name = "Testname"
    var newSpreadsheet = SpreadsheetApp.create(name);
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    sheet = originalSpreadsheet.getActiveSheet();
    sheet.copyTo(newSpreadsheet);
    //Save the desired sheet as pdf
    var pdf = DriveApp.getFileById(newSpreadsheet.getId()).getAs('application/pdf');
    var saveCopy = DriveApp.createFile(pdf);
    //Delete temporary spreadsheet
    DriveApp.getFilesByName(name).next().setTrashed(true);
    //Move the pdf file from the rootfolder to the folder where invoices are to be stored.
    var files = DriveApp.getRootFolder().getFiles();
    while (files.hasNext()) {
        var …
Run Code Online (Sandbox Code Playgroud)

google-apps-script

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

google-apps-script ×1