У меня проблема со скриптом Google Apps. У меня есть слайд-ссылка Google Slides в файле Google Sheets. Я сделал копии обоих файлов и хочу обновить ссылку на слайд на листе новой. Не могли бы вы помочь мне найти решение? Потому что я этого не добился.
Извлечь URL-адрес определенного слайда в презентации с помощью скрипта Google Apps
Ответы (2)
С помощью следующего кода вы можете достичь своей цели; то есть вставить в ячейку B5
URL третьего слайда. Вам нужно только вставить в код необходимые идентификаторы и активировать SlidesApp с использованием Resource ⮞ Advanced Google services ⮞ Slides ⮞ On
.
function insertSlideURL() {
var sheet = SpreadsheetApp.openById(
"{SPREADSHEET ID}").getSheetByName("Sheet1");
var cell = "B5";
var presentation = SlidesApp.openById(
"{PRESENTATION ID}");
var slides = presentation.getSlides();
var slide = 3;
var slideURL = presentation.getUrl() + "#slide=id." + slides[slide - 1]
.getObjectId();
sheet.getRange(cell).setValue(slideURL);
}
Я надеюсь, что это соответствует вашим требованиям. Вы можете изменить переменные ячейки и слайда, чтобы они соответствовали другой конфигурации ячейки / слайда.
Для получения дополнительных пояснений: я использовал getSlides()
, чтобы собрать массив каждого слайда и getObjectId()
, чтобы прочитать его идентификатор . Пожалуйста, напишите мне, если вам понадобится дополнительная помощь или дополнительные разъяснения.
Вам необходимо создать URL-адрес слайда вручную, используя идентификатор объекта из Slide.getObjectID()
Вот пример, в котором будут регистрироваться URL-адреса для каждого слайда презентации.
function getSlideURLS() {
var presentation = SlidesApp.getActivePresentation();
var base_url = presentation.getUrl();
var slides = presentation.getSlides();
for(var i in slides){
var slide_url = base_url+'#slide=id.'+slides[i].getObjectId();
Logger.log(slide_url);
}
}