Я использую скрипт Google Apps для входных данных от Google Sheets в Google Slides. Я хочу, чтобы значение и форматирование, показанное в Google Sheets, передавали на слайды Google. Например: Placeholder {{a4}} показывает -20 в красном. Значение -20 передается, но я не могу получить сценарий, чтобы сохранить красный цвет. {{A7}} показывает +40 в зеленом, но он не будет отображаться в зеленых на слайдах Google. Я пробовал несколько сценариев (загружено в файл листа Google). Одним из примеров является сценарий ниже. Есть ли способ сделать это? Два файла, которые я использовал, также прикреплены.
Я использую скрипт Google Apps для входных данных от Google Sheets в Google Slides. Я хочу, чтобы значение и форматирование, показанное в Google Sheets, передавали на слайды Google. Например: Placeholder {{a4}} показывает -20 в красном. Значение -20 передается, но я не могу получить сценарий, чтобы сохранить красный цвет. {{A7}} показывает +40 в зеленом, но он не будет отображаться в зеленых на слайдах Google. Я пробовал несколько сценариев (загружено в файл листа Google). Одним из примеров является сценарий ниже. Есть ли способ сделать это? Два файла, которые я использовал, также прикреплены.[code]function updateTemplate() { const presentationID = "1tDFPYHd-U1mp5h5tC0VRkXciSS4wfCKA6FS9TmlseDg"; const presentation = SlidesApp.openById("1tDFPYHd-U1mp5h5tC0VRkXciSS4wfCKA6FS9TmlseDg"); const values = SpreadsheetApp.getActive().getDataRange().getValues(); const slides = presentation.getSlides();
let placeholderMap = {};
slides.forEach((slide, slideIndex) => { const shapes = slide.getShapes(); shapes.forEach((shape, shapeIndex) => { if (shape.getShapeType() === SlidesApp.ShapeType.TEXT_BOX && shape.getText) { const text = shape.getText().asString(); values.forEach(([placeholder, value]) => { if (text.includes(placeholder)) { if (!placeholderMap[placeholder]) { placeholderMap[placeholder] = []; } placeholderMap[placeholder].push({ slideIndex, shapeIndex, originalText: text }); } }); } }); });
// Store the placeholder map as JSON in Script Properties PropertiesService.getScriptProperties().setProperty("placeholderMap", JSON.stringify(placeholderMap)); Logger.log("Template updated and placeholder map saved."); }[/code]