TG Telegram Group & Channel
Google Таблицы | United States America (US)
Create: Update:

Получаем из длинной строки Таблицу (часть 2)

Ребята, усложняем наш пример, в реальности в наших данных под каждой датой может быть несколько платежей (смотрите, обвёл эти случаи на скриншоте).

Что делать в этом случае, как получить из этого правильную Таблицу? Использовать либо продвинутую формулу (в комментарии отправлю пример такой формулы от прекрасной Елизаветы), либо написать простую пользовательскую функцию на GAS, пример такой функции с комментариями по каждой части ниже.


function myFunction(arg) {
//делим на строки по " ₽" и переносу строки
var first = arg.split(" ₽\n");

//каждую часть еще раз делим по переносу строки и проверяем, сколько получилось элементов, если четыре – всё хорошо, если три - даты нет, вместо даты подставляет пустую ячейку
var second = first.map(row => {
row = row.split("\n");
if (row[3]) {
return row;
} else {
return [''].concat(row);
};
});

//пробегаемся в цикле по массиву, по каждой строке и если дата нет, то берем ее из строки выше
var third = second.map((row, i) => {
if (!row[0]) {
row[0] = second[i - 1][0];
}
return row;
})

//возвращаем результат
return third;
};


Таблица с примером

PS В следующем посте покажем вам, как парсить страницу с товаром так, чтобы получать и категории и описание товара

---
⭐️ Заказ работы

Google Таблицы
Раскладываем длинную строку на столбцы и строки в два этапа Друзья, к нам приходит выписка вот в таком формате: 26 Марта Пополнение #173/Лицевой счет 20000.00 ₽ 26 Марта Пополнение #1730/Лицевой счет 50000.00 ₽ 25 Марта Пополнение #1726/Лицевой счет 25000.00…
Получаем из длинной строки Таблицу (часть 2)

Ребята, усложняем наш пример, в реальности в наших данных под каждой датой может быть несколько платежей (смотрите, обвёл эти случаи на скриншоте).

Что делать в этом случае, как получить из этого правильную Таблицу? Использовать либо продвинутую формулу (в комментарии отправлю пример такой формулы от прекрасной Елизаветы), либо написать простую пользовательскую функцию на GAS, пример такой функции с комментариями по каждой части ниже.


function myFunction(arg) {
//делим на строки по " ₽" и переносу строки
var first = arg.split(" ₽\n");

//каждую часть еще раз делим по переносу строки и проверяем, сколько получилось элементов, если четыре – всё хорошо, если три - даты нет, вместо даты подставляет пустую ячейку
var second = first.map(row => {
row = row.split("\n");
if (row[3]) {
return row;
} else {
return [''].concat(row);
};
});

//пробегаемся в цикле по массиву, по каждой строке и если дата нет, то берем ее из строки выше
var third = second.map((row, i) => {
if (!row[0]) {
row[0] = second[i - 1][0];
}
return row;
})

//возвращаем результат
return third;
};


Таблица с примером

PS В следующем посте покажем вам, как парсить страницу с товаром так, чтобы получать и категории и описание товара

---
⭐️ Заказ работы


>>Click here to continue<<

Google Таблицы







Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)