четверг, 11 февраля 2016 г.

Мои последние достижения на coursera (Build Complete Web Solutions.The Hong Kong University of Science and Technology)

Решил поучиться новым технологиям в области frontend-a. А то что всё сервер да сервер. Хочется иногда чего-то "творческого" :)
На coursera пару месяцев назад началась специализация  Build Complete Web Solutions Гонконгского университета (якобы, номер 1 в Азии). Пока решил всю специализацию не проходить - да и не очень понятно зачем мне это - зато поучиться на отдельных курсах. К моменту начала coursera ещё не стала сильно жадной, и на ряде курсов можно было получить оценку, не покупая сертификат (последний курс прошёл уже без оценок).
В двух словах - интересно и познавательно. Буду пробовать дальше саморазвиваться в эту сторону.
А результат самих курсов, на данный момент, на картинке :


вторник, 9 февраля 2016 г.

Google Sheets. Копирование данных листа google sheet из одного документа в другой.

Дано

1. Документ-источник (google sheet), в котором ведутся некоторые данные.
2. Документ-приёмник (google sheet), в котром на одном из листов надо использовать данные из документа-источника.

Описание решения

В документе-приёмнике в скриптах, пишется код, который запускается регулярно триггером (в моём случае каждый час), и копирует полностью (т.е. накрывает/перезаписывает диапазон ячеек целиком) данные. А также и цветовые схемы (font,background colors) и примечания ячеек, входящих в диапазон.

Код скрипта

function readFomVolonteersQuestionnaire() {
  var RANGE_NAME = "A1:AT202";
  var DEST_SHEET_NAME = "Диапазон";
  
  // Документ - источник
  var spreadsheet = SpreadsheetApp.openById('13d...'); 
  
  var sheet = spreadsheet.getSheets()[0];     // лист с данными (первый в источнике)
  
  var range = sheet.getRange(RANGE_NAME);
  var values = range.getValues();
  var backgroundColors = range.getBackgrounds();// цвет фона
  var fontColors = range.getFontColors();// цвет текста
  var notes = range.getNotes();  // примечания

  
  // Текущий документ (приёмник данных)
  var ss = SpreadsheetApp.getActiveSpreadsheet();  // активный документ (из которого запускается скрипт)
  var SSsheet = ss.getSheetByName(DEST_SHEET_NAME);
  var ssRange = SSsheet.getRange(RANGE_NAME);
  ssRange.setValues(values);
  ssRange.setBackgrounds(backgroundColors);
  ssRange.setFontColors(fontColors);
  ssRange.setNotes(notes);  // примечания 
}