У меня есть такая функция
function data_process(){
var output = HtmlService.createHtmlOutput('<b>Processing the Data!!</b>')
.setHeight(150)
.setWidth(200);
SpreadsheetApp.getUi().showModalDialog(output, '⚙️ Processing..');
Utilities.sleep(1000);
/* Here I am Building an chart into new sheet. There is no issue in chart creation
and creating an new sheet for charts */
var output = HtmlService.createHtmlOutput('<script>google.script.host.close();/script>');
SpreadsheetApp.getUi().showModalDialog(output, 'Loading...');
}
Я имею в виду эти решения [1]: Автоматическое закрытие модального диалогового окна — после завершения кода сервера закройте диалоговое окно в таблице Google
Модальное окно не отображается и ошибок тоже нет. Буду признателен за любую оказанную помощь. Заранее спасибо.
Для простых статусных сообщений обычно проще использовать всплывающее сообщение, например:
function data_process() {
const ss = SpreadsheetApp.getActive();
ss.toast('Processing data...', '', -1);
// build a chart in another sheet...
ss.toast('Done.');
}
Первый тост будет отображаться столько, сколько потребуется. Когда обработка завершена, второй тост заменяет первый и автоматически закрывается через пять секунд.
См. Spreadsheet.toast().
Чтобы протестировать использование этой функции в Google Sheets, я предлагаю вам перейти в меню Extensions
в самой электронной таблице, а затем выбрать опцию Apps Script
.
Откроется новое окно Apps Script, где вы можете использовать этот код:
function data_process() {
var ui = SpreadsheetApp.getUi();
var output = HtmlService.createHtmlOutput('<b>Processing the Data!!</b>')
.setHeight(150)
.setWidth(200);
ui.showModalDialog(output, '⚙️ Processing..');
// Simulate processing delay
Utilities.sleep(300);
// Perform the data processing and chart creation here
// ...
var closeDialog = '<script>google.script.host.close();</script>';
var closeOutput = HtmlService.createHtmlOutput(closeDialog);
ui.showModalDialog(closeOutput, 'Loading...');
}
Затем выберите функцию data_processing()
и нажмите Run
, затем дайте разрешение, чтобы разрешить запуск скрипта. Затем вернитесь на вкладку «Открытый лист», и скрипт должен запуститься автоматически.
Спасибо за помощь в этом, я проверю и приму ответ как можно скорее.
Без проблем! Если у вас есть другие вопросы, пожалуйста, дайте мне знать
Спасибо за помощь в этом, я проверю и приму ответ как можно скорее.