Hollib
@Hollib

Apps script Как скрыть {текст} в кавычках, при условии что данные в гугл таблицы отсутствуют?

Есть данные в гугл таблицы, из нее с помощью скрипта данные вноситься в гугл документ.
Каждая ячейка в гугл таблице отвечает за свое слово в шаблоне.
Пример у гугл документе есть условные {текст} в кавычках , скрипт берет данные из гугл таблицы и вставляет его в этот {текст}, на выходе мы получает нужный теrcn без {} кавычек.

Вопрос:
Какой код прописать или функцию, если в гугл таблице нет данных, на выходе он не вставлял в гугл документ {текст} в кавычках. а просто оставлял место пустым.

Сам код:
function Creator() {
  
  const docFile = DriveApp.getFileById("13QpiykjsJE0UACMH-ASBkCqHIU");
  // это файл шаблона
  const tempFolder = DriveApp.getFolderById("2UvWRFWbzdBDT");
  // это директория для новых файлов
  const tempFile = docFile.makeCopy(tempFolder);
  // делаем копию шаблона
  const tempDocFile = DocumentApp.openById(tempFile.getId());
  // открываем созданную копию
  const body = tempDocFile.getBody();
  // тело файла копии
    
  var list = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  
  
  var a1 = list.getRange(2, 22).getValue()
  var a2 = list.getRange(2, 24).getValue();
  var a3 = list.getRange(2, 25).getValue();
  var a4 = list.getRange(2, 27).getValue();
  var a5 = list.getRange(2, 26).getValue();

  var a7 = list.getRange(2, 3).getValue()
  var a8 = list.getRange(2, 14).getValue();
  var a9 = list.getRange(2, 18).getValue();
  var a10 = list.getRange(2, 20).getValue();
  var a11 = list.getRange(2, 19).getValue();
  
  var a12 = list.getRange(2, 10).getValue();
  var a13 = list.getRange(2, 12).getValue();
  var a14 = list.getRange(2, 11).getValue();
  var a15 = list.getRange(2, 7).getValue();
  var a16 = list.getRange(2, 8).getValue();
  var a17 = list.getRange(2, 23).getValue();
  var a18 = list.getRange(2, 29).getValue();
  var a19 = list.getRange(2, 30).getValue();


  body.replaceText("{Фамилия Имя Отчество}", a1);
  body.replaceText("{Космодемьянская д. 13 кв. 29}", a2);
  body.replaceText("{1111 111111}", a3);
  body.replaceText("{почта}", a4);
  body.replaceText("{01.01.2000}", a5);

  body.replaceText("{Фамилия Имя Отчество}", a7);
  body.replaceText("{Космодемьянская д. 13 кв. 29}", a8);
  body.replaceText("{2222 333333}", a9);
  body.replaceText("{мясо}", a10);
  body.replaceText("{01.01.2222}", a11); 

  body.replaceText("{ДР33.33.3333}", a12);
  body.replaceText("{сок}", a13);
  body.replaceText("{хлеб}", a14);
  body.replaceText("{номер телефона}", a15);
  body.replaceText("{адрес}", a16);
  body.replaceText("{1 телефон}", a17);
  body.replaceText("{2.Фамилия Имя Отчество}", a18);
  body.replaceText("{2 телефон}", a19);

  tempDocFile.saveAndClose();
}
  • Вопрос задан
  • 202 просмотра
Решения вопроса 1
oshliaer
@oshliaer Куратор тега Google Apps Script
Google Products Expert
В конце всего вместо этого

body.replaceText("{Фамилия Имя Отчество}", "");
body.replaceText("{Космодемьянская д. 13 кв. 29}", "");
body.replaceText("{1111 111111}", "");
body.replaceText("{почта}", "");
body.replaceText("{01.01.2000}", "");

body.replaceText("{Фамилия Имя Отчество}", "");
body.replaceText("{Космодемьянская д. 13 кв. 29}", "");
body.replaceText("{2222 333333}", "");
body.replaceText("{мясо}", "");
body.replaceText("{01.01.2222}", ""); 

body.replaceText("{ДР33.33.3333}", "");
body.replaceText("{сок}", "");
body.replaceText("{хлеб}", "");
body.replaceText("{номер телефона}", "");
body.replaceText("{адрес}", "");
body.replaceText("{1 телефон}", "");
body.replaceText("{2.Фамилия Имя Отчество}", "");
body.replaceText("{2 телефон}", "");


Просто вызовите это

body.replaceText('{.*?}', '');

Это удалит все неиспользованные шаблоны.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы