Script, Macro for Google Sheets Access in All Books
The task is to make possible the launch of this script in all the tables.
Завдання. Є 30 гугл таблиць з данними. Є макрос який створює 4 зведени таблиці Небхідного формату.
Задача зробити можливим запуск данного скрипта у всіх таблицях.
Переписати скрипт який був записаний як макрос і що вказано нижче,
щоб він був виконаний для кожної таблиці в певній папці на Google Диск
і результатом був такий самий як у прикладі. Приклад резултату скрипта https://docs.google.com/spreadsheets/d/18iAH6Q6nhx4Ph6yxytofYgSm4lIf7RuaeXU9m7FdzYM/edit?usp=sharing
Створено 3 нових аркуша, з трьома зведеними таблицями різного формату.
Скрипт буде запускатися з AppsScript. (або інакше, якщо є більш простий варіант)
В папці тільки гугл таблиці. Всі таблиці мають однаковий формат., однакову назву першого листа для обробки.
Скрипт який треба переписати :
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getActiveSheet();
sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns()).activate();
var sourceData = spreadsheet.getRange('1:1000');
spreadsheet.insertSheet(spreadsheet.getActiveSheet().getIndex() + 1).activate();
spreadsheet.getActiveSheet().setHiddenGridlines(true);
var pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
var pivotGroup = pivotTable.addRowGroup(11);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
var pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
spreadsheet.getRange('B:B').activate();
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00')
.setNumberFormat('#,##0.0')
.setNumberFormat('#,##0');
spreadsheet.getRange('A3').activate();
spreadsheet.getActiveSheet().setColumnWidth(1, 609);
spreadsheet.getRange('A:A').activate();
spreadsheet.getActiveRangeList().setWrapStrategy(SpreadsheetApp.WrapStrategy.WRAP);
spreadsheet.getActiveSheet().setName('Зведена по Клієнтам');
spreadsheet.duplicateActiveSheet();
spreadsheet.getActiveSheet().setName('Зведена по Клієнтам/Товарам');
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending();
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(30);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotGroup = pivotTable.addRowGroup(11);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
spreadsheet.getActiveSheet().setColumnWidth(1, 282);
spreadsheet.getActiveSheet().setColumnWidth(1, 222);
spreadsheet.getActiveSheet().setColumnWidth(2, 301);
spreadsheet.getRange('D:D').activate();
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00')
.setNumberFormat('#,##0.0');
spreadsheet.getRange('C:C').activate();
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00')
.setNumberFormat('#,##0.0')
.setNumberFormat('#,##0');
spreadsheet.getRange('E:E').activate();
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00')
.setNumberFormat('#,##0.0')
.setNumberFormat('#,##0');
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Зведена по Клієнтам'), true);
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Зведена по Клієнтам/Товарам'), true);
spreadsheet.duplicateActiveSheet();
spreadsheet.getActiveSheet().setName('Зведена по Товарам');
spreadsheet.getRange('B5').activate();
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotValue = pivotTable.addPivotValue(5, SpreadsheetApp.PivotTableSummarizeFunction.COUNTA);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotValue = pivotTable.addPivotValue(5, SpreadsheetApp.PivotTableSummarizeFunction.COUNTUNIQUE);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
spreadsheet.getActiveSheet().setColumnWidth(2, 169);
spreadsheet.getActiveSheet().setColumnWidth(1, 492);
spreadsheet.getActiveSheet().setColumnWidth(3, 67);
spreadsheet.getActiveSheet().setColumnWidth(4, 82);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(5, SpreadsheetApp.PivotTableSummarizeFunction.COUNTUNIQUE);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[0], []);
pivotTable = spreadsheet.getRange('A1').createPivotTable(sourceData);
pivotValue = pivotTable.addPivotValue(5, SpreadsheetApp.PivotTableSummarizeFunction.COUNTUNIQUE);
pivotValue = pivotTable.addPivotValue(32, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(30, SpreadsheetApp.PivotTableSummarizeFunction.SUM);
pivotValue = pivotTable.addPivotValue(31, SpreadsheetApp.PivotTableSummarizeFunction.AVERAGE);
pivotGroup = pivotTable.addRowGroup(27);
pivotGroup.sortDescending()
.sortBy(pivotTable.getPivotValues()[1], []);
spreadsheet.getActiveSheet().setColumnWidth(2, 78);
-
1026 16 0 Good day I have experience in creating appScript. Write to PF with pleasure I will help you.
Доброго дня маю досвід у створенні appScript. Пишіть у ПП з радістю вам допоможу.
-
proposal concealed by freelancer
-
1801 109 0 Good day .
Great experience in developing script for Google tables.
Write in ls, you need to see the script and tables.
Добрый день.
Большой опыт разработки скриптов, для гугл таблиц.
Пишите в лс, нужно увидеть скрипт и таблицы.
-
proposal concealed by freelancer
-
proposal concealed by freelancer