Работа с Google Apps Script. Как сделать такое?

321
01 августа 2017, 19:30

Всем доброй ночи/дня. разбираюсь с google app script, и стоит перед мною задание:

В таблице Аркуш1, в столбце "С" сделать кнопку, при нажатии которой создается Шаблонный документ(я назвал его newDocTemplate) (template),где поля с инф о кленте и автомобиле автоматом берутся из Аркуш1 Строго говоря newDocTemplate - это копия template, но с заполненными некоторыми ячейками, взятыми из таблицы LIST

Я это вроде как сделал, но только для 1-го клиента. Но мне надо что бы при клике на строчку(с кнопкой) С5, С6, и т.д. создавался документ с соответствующими клиентами. Кнопку я реализовал в виде меню.

Может кто поможет мне с этим вопросом.

Вот код:

var activeSreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 
// получаем активный документ(все листы) 
var template = activeSreadsheet.getSheetByName("template"); // выносим в переменную базовцй шаблон заявки 
var newTable = activeSreadsheet.setActiveSheet(template).copyTo(activeSreadsheet).activate(); // создаем шаблон в новый лист, и кладем в активный документ и сразу его делаем активным 
var dataSheet = activeSreadsheet.getSheetByName("Аркуш1"); // берем таблицу с данными 
 
function addNewTable(rIndx){ 
  var data = { // решил создать объект с данными  
    model: dataSheet.getRange("D" +rIndx).getValue(), 
    cantact: dataSheet.getRange("E" +rIndx).getValue() 
  } 
  newTable.getRange("A9").setValue("Замовник, тел.: "+data.cantact).setFontWeight("bold"); 
  newTable.getRange("A10").setValue("Марка і модель авто: " + data.model).setFontWeight("bold"); 
} 
 
function onOpen(){ 
  var ui = SpreadsheetApp.getUi(); 
  ui.createMenu("myMenu") 
  .addItem("Generate new Tamplate", "addNewTable") 
  .addSeparator() 
  .addItem("ID", "onEdit") 
  .addToUi(); 
} 
 
function onEdit(event){ 
  var sheet = event.source.getActiveSheet(); 
  var sheetName = event.source.getActiveSheet().getSheetName() // Получаем имя листа который активен  
  var actRng = event.source.getActiveRange();//Ячейка в которой произошло изменение 
  var rowIndex = actRng.getRowIndex(); 
  var ss = SpreadsheetApp.getActiveSpreadsheet(); 
  //var _sheet = ss.getSheets()[0];//Лист где нужно изменения отлавливать 
  var activeCELL = dataSheet.getActiveCell(); 
  var activeCELL_index = i.getRowIndex(); 
  addNewTable(activeCELL_index); 
//  Logger.log(rowIndex) 
}

Ссылка на GoogleDocs

READ ALSO
JsonResponse возвращает сам себя - django

JsonResponse возвращает сам себя - django

Всем доброго времени суток

295
В чём ошибка при удалении блока в JS?

В чём ошибка при удалении блока в JS?

Есть скрипт добавления блоков на страницу https://jsfiddlenet/7su5s63d/

301
Выполнение задачи webpack по команде

Выполнение задачи webpack по команде

У меня в конфиге webpack есть два варианта обработки sass:

215
Сортировка найденного товара

Сортировка найденного товара

Есть сайт, у которого есть поиск по каталогу(например, вывод товара по слову в названии), нужно этот товар отсортировать по цене (например,...

292