如何使用Google Apps脚本获取嵌入在Google电子表格中的图片或blob?对于图表,我使用Sheet.getCharts()来返回EmbeddedChart类型的数组。
使用Sheet.insertImage首先将图像嵌入到第一位是很简单,但我无法再次访问它?
答案 0 :(得分:0)
这是一项工作,但可能对你有用。使用公式设置图像,然后更改公式并替换旧公式。如果有图像以外的公式,则只能返回图像公式:
function getImages() {
var ss=SpreadsheetApp.getActiveSpreadsheet();
var s=ss.getSheets()[0];
var str="https://upload.wikimedia.org/wikipedia/commons/b/b4/JPEG_example_JPG_RIP_100.jpg"
var D1=s.getRange("D1").setFormula('=image("'+str+'", 4, 50, 100)')
var str1="https://www.google.com/images/srpr/logo3w.png"
var E1=s.getRange("E1").setFormula('=image("'+str1+'", 4, 50, 100)')
var list = s.getDataRange().getFormulas() //get any cells with formulas
var array=[]
//get array of image formulas only
for(var i=0;i<list.length;i++){
for(var j=0;j<list[0].length;j++){
var ts=list[i][j]
var sbs=ts.substring(0,6)// get first 6 characters of formula
if(sbs=="=image"){ // if = '=image'
array.push(list[i][j])
}}
// do what you want to with the list of image formulas to change images.
}}