Size: a a a

Чат | Google Таблицы и скрипты

2020 March 13

MV

Mikhail V in Чат | Google Таблицы и скрипты
Michael Podgaiets
Подскажите, плиз:
1) как сделать макрос для сохранения файла в csv ?
Пробовал записать его Tools-Script editor , не работает.
2) Как при записи файла в имя добавить модификатор - дату и символы?
А вы готовые аддоны не анализировали? Типа этого:
http://joxi.ru/823aKgjcDGPMxr
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Michael Podgaiets
Подскажите, плиз:
1) как сделать макрос для сохранения файла в csv ?
Пробовал записать его Tools-Script editor , не работает.
2) Как при записи файла в имя добавить модификатор - дату и символы?
//TO-CSV
 SpreadsheetApp.flush();
 var url = "https://docs.google.com/spreadsheets/export?id=" + sprdsht.getId() + "&gid=249249034&exportFormat=csv"
 var token         = ScriptApp.getOAuthToken();
 var response      = UrlFetchApp.fetch(url, {
   headers: {
     'Authorization': 'Bearer ' +  token
   }
 });
 
 var fileName = (xlsFilename + '.csv');
 var blobs   = response.getBlob().setName(fileName);
 
 var fileTestDrive = {
   title: fileName,
   mimeType: 'CSV'
 };
 
 file = Drive.Files.insert(fileTestDrive, blobs)
 var CsvUrl =  DriveApp.getFileById(file.id).getUrl()
 
 sheet.getRange("b2").setValue(CsvUrl)
источник

ДХ

Дамир Хафизов... in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Нет, колонки нужно перечислять по одной, но мысль хорошая, можно будет дописать.
Пока без скрипта добавил в ячейки такую формулу у себя, чтоб облегчить ввод нужных столбцов
=JOIN(",";ArrayFormula(COLUMN(A1:AI1)))&",50"
Аргумент в COLUMN не получилось добавить из другой ячейки типа COLUMN(TEXT(D1;""))
"В качестве аргумента необходимо указать диапазон ячеек."
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
чтобы все работало - ндао включить drive api в настройках редактора скриптов
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Дамир Хафизов
Пока без скрипта добавил в ячейки такую формулу у себя, чтоб облегчить ввод нужных столбцов
=JOIN(",";ArrayFormula(COLUMN(A1:AI1)))&",50"
Аргумент в COLUMN не получилось добавить из другой ячейки типа COLUMN(TEXT(D1;""))
"В качестве аргумента необходимо указать диапазон ячеек."
Так-с, формула значит
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Дамир Хафизов
Пока без скрипта добавил в ячейки такую формулу у себя, чтоб облегчить ввод нужных столбцов
=JOIN(",";ArrayFormula(COLUMN(A1:AI1)))&",50"
Аргумент в COLUMN не получилось добавить из другой ячейки типа COLUMN(TEXT(D1;""))
"В качестве аргумента необходимо указать диапазон ячеек."
Я не очень понял, Дамир, а какую цель ты преследуешь? Ты хочешь разбить строку на отдельные элементы?
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
ну или так, через arrayformula
источник

VP

Vitaliy P. in Чат | Google Таблицы и скрипты
Интересное наблюдение. Если скриптом выставлять формулы условного форматирования содержащие REGEXMATCH (перенесенные в скрипт простым копированием из настроек УФ), то они не будут работать. Оказалось, в этом случае все бэкслеши надо дополнительно экранировать
источник

ДХ

Дамир Хафизов... in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Я не очень понял, Дамир, а какую цель ты преследуешь? Ты хочешь разбить строку на отдельные элементы?
Это для скрипта копирования, он же строки берет указанные через запятую, если таблица большая и весь диапазон нужен не проставлять чтобы 50 цифр
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Дамир Хафизов
Это для скрипта копирования, он же строки берет указанные через запятую, если таблица большая и весь диапазон нужен не проставлять чтобы 50 цифр
Можешь сделать так

=JOIN(","; SEQUENCE( max( SPLIT(B2;"-"));1;1;MIN( SPLIT(B2;"-"))))
источник

ДХ

Дамир Хафизов... in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Можешь сделать так

=JOIN(","; SEQUENCE( max( SPLIT(B2;"-"));1;1;MIN( SPLIT(B2;"-"))))
👍🏻 именно
источник

SD

Stepan Demin in Чат | Google Таблицы и скрипты
Всем привет!
Никто не делал Телеграмм - бота, который вытягивает новые изменения в Google Sheets
По аналогии как описано в инструкции

Например, у меня есть парсер писем в google sheets, который собирает информацию из писем по условиям. И мне нужна оповещалка о том, что парсер получил новые данные
источник

L

Lev in Чат | Google Таблицы и скрипты
Stepan Demin
Всем привет!
Никто не делал Телеграмм - бота, который вытягивает новые изменения в Google Sheets
По аналогии как описано в инструкции

Например, у меня есть парсер писем в google sheets, который собирает информацию из писем по условиям. И мне нужна оповещалка о том, что парсер получил новые данные
Ты можешь в этот парсер, по завршению вписать код отправки уведомления.
источник

L

Lev in Чат | Google Таблицы и скрипты
То есть к этому скрипты ты прикручиваешь бота. И после завершения этим ботом присылаешь себе в телегу уведомление
источник

SD

Stepan Demin in Чат | Google Таблицы и скрипты
Lev
То есть к этому скрипты ты прикручиваешь бота. И после завершения этим ботом присылаешь себе в телегу уведомление
Понял, спасибо, попробую
источник

ДХ

Дамир Хафизов... in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Можешь сделать так

=JOIN(","; SEQUENCE( max( SPLIT(B2;"-"));1;1;MIN( SPLIT(B2;"-"))))
Шут шут откорректировал
=JOIN(","; SEQUENCE(1;max(split(D2;"-"))-min(split(D2;"-"))+1;min(split(D2;"-"));1))

Не совсем корректно работала если диапазон не с 1 начинается
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Дамир Хафизов
Шут шут откорректировал
=JOIN(","; SEQUENCE(1;max(split(D2;"-"))-min(split(D2;"-"))+1;min(split(D2;"-"));1))

Не совсем корректно работала если диапазон не с 1 начинается
+
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Привет! Так ты можешь пересобрать свой массив. Расположить столбцы в нужном тебе порядке и потом их вставить.
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Понятна логика же? Берём данные и внутри GAS, с помощью map создаем новый массив, пересобирая колонки старого в нужном порядке. Результат вставляем.
источник