#image #google-apps-script #file-upload
#изображение #google-apps-script #загрузка файла
Вопрос:
Я запускаю свои собственные ежегодные прогнозы по бейсболу в стиле фэнтези и хочу автоматически добавлять изображения игроков на созданный мной лист.
Я использую формулу для создания ссылки на страницу с изображением игрока на ESPN.
https://a.espncdn.com/combiner/i?img=/i/headshots/mlb/players/full/33859.png
Есть ли способ автоматически добавлять изображение проигрывателя на страницу?
=image («Link») — это формула, но я не могу использовать местоположение ячейки в качестве ссылки.
Любые советы или рекомендации будут полезны и оценены
Ответ №1:
Я создал метод Apps Script для достижения вашей цели, поскольку это невозможно сделать с помощью формулы.
Вот сценарий, который я сделал с комментариями:
function SpecialOnEdit(e) {
//Get the edited cell
var range = e.range;
//Get the active sheet
var sheet = SpreadsheetApp.getActiveSheet();
//Download the image. (e.value is the URL in Google sheet)
var response = UrlFetchApp.fetch(e.value);
//Get the binary data of the image and create a blob object
var binaryData = response.getContent();
var blob = Utilities.newBlob(binaryData, 'image/png', 'MyImageName');
//Insert the image into the same row that the user place the image URL link
var image = sheet.insertImage(blob, range.getHeight(), range.getRow());
//Set the height of the row, show that the image can fit the row
sheet.setRowHeight(range.getRow(), image.getHeight() 10);
}
Вы должны добавить триггеры следующим после вставки скрипта. Перейдите в редактор сценариев и нажмите Редактировать-> Триггеры текущего проекта-> Добавить триггер -> в разделе Выбор типа события выберите редактировать-> нажмите Сохранить
Затем, чтобы протестировать триггер и сценарий, вставьте URL-адрес изображения формата PNG в электронную таблицу для проверки результата.
Вот пример вывода скрипта и триггера: