问题描述
我希望能够从Google Drive将图像文件添加到我的电子表格中。我看到有一个内置的图像功能=image
,但这需要一个URL,并且图像文件应该在互联网上公开共享。但是,我正在使用数字资产,不能公开共享它们。
我有以下代码,这可以工作,但不会添加到所需的单元格。这真的可能吗?
function insertImageFromDrive(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var fileId = '0B5UAkV0avfiKNGYtd1VzUzlsTVk';
var img = DriveApp.getFileById(fileId).getBlob();
sheet.insertImage(img, 4, 3)
}
推荐答案
尝试使用应用脚本中的指南Insert image in a spreadsheet:
function insertImageOnSpreadsheet() {
var SPREADSHEET_URL = 'INSERT_SPREADSHEET_URL_HERE';
// Name of the specific sheet in the spreadsheet.
var SHEET_NAME = 'INSERT_SHEET_NAME_HERE';
var ss = SpreadsheetApp.openByUrl(SPREADSHEET_URL);
var sheet = ss.getSheetByName(SHEET_NAME);
var response = UrlFetchApp.fetch(
'https://developers.google.com/adwords/scripts/images/reports.png');
var binaryData = response.getContent();
// Insert the image in cell A1.
var blob = Utilities.newBlob(binaryData, 'image/png', 'MyImageName');
sheet.insertImage(blob, 1, 1);
}
只需替换必要的值。指示您插入图像的单元格所在的部分:
sheet.insertImage(blob, 1, 1);