Пишите ваши вопросы и замечания сюда! Постараюсь на все ответить! Если вам нравится видео, вы можете его поддержать лайком а так же, при желании, поддержать канал монетой 🎊 stm-solution.diaka.ua/donate 🥇Bitcoin - bc1q5ve3p8zmcm6z9tapts6padpmnvv572tsujukad 📲 Через кнопку "Спасибо" 👍 Или станьте спонсором канала!
@STM Solution здравствуйте! Спасибо за урок! Подскажите, а как мне решить такую задачу: Есть две таблицы оплаченные и оформленные заказы. Как мне по email-ам из первой таблицы найти все строки во второй, чтобы оставить только их.
Цикл по всему столбцу - это работает, но КПД - отстой. а) В таблице может быть 1000 пустых строк, а полезных пять. И вы будете перебирать тысячу и тратить на это время. б) Во-вторых фуyкция indexOf() сразу отдает вам номер строки с совпадением, если оно есть. И цикл не нужен (за исключением случаев, если мы допускаем несколько повторов в столбце) Цитирую. Метод indexOf() ищет в массиве указанный элемент и возвращает его индекс. Если элемент встречается в массиве несколько раз, indexOf() возвращает индекс самого первого элемента. Если элемент отсутствует в массиве, метод вернет -1
Добрый день, Станислав. Хорошее видео. Единственное, перепутали количество строк с количеством столбцов на последних минутах. Если можно добавьте описания вставки элемента в середину массива. Спасибо.
Добрый день, подскажите куда копать по следующей задаче: Лист1 содержит некую базу товаров в столбцах в том числе есть "Остаток" и "Проданные" Лист2 содержит ячейку с числом товара которое необходимо перевести из Остатка в Проданные. По нажатию на ссылку или кнопку данное число отнимается от значения "Остаток" на Лист1 и соответственно прибавляется к "Проданные" на тоже самое число. Вроде не сложная задача но не найду подходящего метода её реализации.
Вместо строк 12-17 можно просто написать: const row = findIndexRange.find(cells => cells.contains(valToFind)); И вместо console.log(...); лучше использовать Logger.log(...);
Добрый день. Создайте пожалуйста урок по созданию скрипта для того чтобы автоматически можно было скрыть сроки по условию (как пример пустая строка). Весь интернет обшарил, ничего путного найти не могу.
function Closed_Rows() { var app = SpreadsheetApp.getActive().getSheetByName('Лист1'); app.getRange('B:B').getValues().forEach(function (r, i) { if (r[0] == "") app.hideRows(i + 1) }); } Можно задать другое условие вместо =="", например, =="Готово" Но! это не то же самое, как если скрывать строчки фильтром. Это схлопывание строк.
доброго времени суток. у меня такой вопрос. Можно ли сравнить с листа №1 и листа №2 по диапазону, найти повторяющиеся цифровые данные( артикулы) сложить их значения (находящиеся в соседнем столбце) выделить различия цветом либо другим вариантом расхождение: кол-во значений одинакового артикула в двух листах. подскажите в каком уроке это можно посмотреть, или это возможно сделать только через скрипты?? а может у вас появится снять видеоурок на эту тему??
Станислав, спасибо за урок ! По такому принципу но через функцию фильтр я записываю телефонные номера и количество покупок, номер является уникальным кодом. Если вписывать в ячейку функции то находит номер и кол во покупок), далее запускаю скрипт и он как раз увеличивает покупку на 1 и обновляет дату покупки 🛍. Благодарю за ваши уроки ! Есть вопрос У вас в скрипте идёт цикл- то есть перебор, скрипт в Гугл работает 360 сек, если будет больше то он прервётся и может не дать результат. Или здесь исключено так как массив. У меня сейчас база из 1050 номеров уникальных, поэтому спрашиваю. Спасибо)
Добрый день, есть к вам вопрос у меня уже есть макрос который переносит данные про проданный товар , в листок с продажами , не могу понять как дописать в него что бы в он находил из разных листов товара нужную строчку с товаром и удалял его , можете пожалуйста помочь?
Подскажите, как осуществить такой же поиск, только если ячейке несколько слов, а поиск ведется по одному слову, которое выбирается из выпадающего списка?
Блин круто. Спасибо. А как сделать так что бы он не суммировал значения а проверял. Допустим, В основной базе есть код товара 10001 и цена товара, после этот же товар приходит завышенной ценой. По условии если. 1 находим товар, 2. Суммируем количество, ( как у вас в ролике и 3. Проверяем цены. Если цена последнего прихода больше то меняем его если нет то оставляем. Спасибо за ранее
Так же как и вставлять в нее, то есть номер строкииу вас же есть, все, sheet.getRange(row,col).getValues() получаете в переменную и вставляйте эти данные куда хотите
@@stmsolution Не получается. Я только учусь. Сделайте пожалуйста такой урок, чтобы копировать всю строку и ее часть. Я не нашла подходящих уроков. Уверена, что он будет полезен!
Подскажите, если в массиве встречается несколько искомых значений, как сделать, чтобы скрипт нашел номера строк всех этих значений? А то если даже убираю break все равно останавливается на первом найденном.
Можно как то сделать, чтобы происходил поиск только по части значения, например, есть четырехзначные числа, но поиск совпадений происходит только по их первым двум цифрам?
Пишите ваши вопросы и замечания сюда! Постараюсь на все ответить!
Если вам нравится видео, вы можете его поддержать лайком а так же, при желании, поддержать канал монетой
🎊 stm-solution.diaka.ua/donate
🥇Bitcoin - bc1q5ve3p8zmcm6z9tapts6padpmnvv572tsujukad
📲 Через кнопку "Спасибо"
👍 Или станьте спонсором канала!
@STM Solution здравствуйте! Спасибо за урок! Подскажите, а как мне решить такую задачу: Есть две таблицы оплаченные и оформленные заказы. Как мне по email-ам из первой таблицы найти все строки во второй, чтобы оставить только их.
Очень полезный урок. Благодаря данной функции можно обработать огромный массив данных и внести изменения в нужную строку. Лайк
Спасибо
Крутотенюшка!
Цикл по всему столбцу - это работает, но КПД - отстой.
а) В таблице может быть 1000 пустых строк, а полезных пять. И вы будете перебирать тысячу и тратить на это время.
б) Во-вторых фуyкция indexOf() сразу отдает вам номер строки с совпадением, если оно есть. И цикл не нужен (за исключением случаев, если мы допускаем несколько повторов в столбце)
Цитирую. Метод indexOf() ищет в массиве указанный элемент и возвращает его индекс. Если элемент встречается в массиве несколько раз, indexOf() возвращает индекс самого первого элемента. Если элемент отсутствует в массиве, метод вернет -1
Добрый день, Станислав.
Хорошее видео. Единственное, перепутали количество строк с количеством столбцов на последних минутах. Если можно добавьте описания вставки элемента в середину массива.
Спасибо.
Добрый, не совсем понял, что вы хотите))
@@stmsolution Есть массива arr = [1, 2,3] как вставить ещё один элемент между вторым и третьим элементом? Только перебор в цикле?
@@helmutrudge2014 функция splice() напрямую решает эту задачу.
Добрый день, подскажите куда копать по следующей задаче:
Лист1 содержит некую базу товаров в столбцах в том числе есть "Остаток" и "Проданные"
Лист2 содержит ячейку с числом товара которое необходимо перевести из Остатка в Проданные. По нажатию на ссылку или кнопку данное число отнимается от значения "Остаток" на Лист1 и соответственно прибавляется к "Проданные" на тоже самое число.
Вроде не сложная задача но не найду подходящего метода её реализации.
Ведите базу данных приданого и отнимайте формулами из остатка
@@stmsolution Что делать понятно, не понятно как на Листе2 при нажатии "кнопки" произвести операцию на Листе1. Пример таблицы скинул на ВК
Вместо строк 12-17 можно просто написать:
const row = findIndexRange.find(cells => cells.contains(valToFind));
И вместо console.log(...); лучше использовать Logger.log(...);
contains is not a function(
Подскажите, пожалуйста, как можно найти определенную клетку по значению в начале строки ( Прим.ФИО), значению столбца (Дата) и изменить эту клетку?
Спасибо, расскажите как загрузить файл на гуглдиск через собственную HTML форму(гугл скрипт)
Добрый день. Создайте пожалуйста урок по созданию скрипта для того чтобы автоматически можно было скрыть сроки по условию (как пример пустая строка). Весь интернет обшарил, ничего путного найти не могу.
function Closed_Rows() {
var app = SpreadsheetApp.getActive().getSheetByName('Лист1');
app.getRange('B:B').getValues().forEach(function (r, i) {
if (r[0] == "")
app.hideRows(i + 1)
});
}
Можно задать другое условие вместо =="", например, =="Готово"
Но! это не то же самое, как если скрывать строчки фильтром. Это схлопывание строк.
доброго времени суток. у меня такой вопрос. Можно ли сравнить с листа №1 и листа №2 по диапазону, найти повторяющиеся цифровые данные( артикулы) сложить их значения (находящиеся в соседнем столбце) выделить различия цветом либо другим вариантом расхождение: кол-во значений одинакового артикула в двух листах. подскажите в каком уроке это можно посмотреть, или это возможно сделать только через скрипты?? а может у вас появится снять видеоурок на эту тему??
Filter, query, условное форматирование
Станислав, спасибо за урок !
По такому принципу но через функцию фильтр я записываю телефонные номера и количество покупок, номер является уникальным кодом.
Если вписывать в ячейку функции то находит номер и кол во покупок), далее запускаю скрипт и он как раз увеличивает покупку на 1 и обновляет дату покупки 🛍.
Благодарю за ваши уроки !
Есть вопрос
У вас в скрипте идёт цикл- то есть перебор, скрипт в Гугл работает 360 сек, если будет больше то он прервётся и может не дать результат.
Или здесь исключено так как массив.
У меня сейчас база из 1050 номеров уникальных, поэтому спрашиваю. Спасибо)
В данном случае максимум секунд 15 и то из за самой таблицы может быть тормоза
Лист с более чем 15000 строк обрабатывает около минуты. Плюс минус 20 секунд. Зависит от гуглнастроения
Добрый день, есть к вам вопрос у меня уже есть макрос который переносит данные про проданный товар , в листок с продажами , не могу понять как дописать в него что бы в он находил из разных листов товара нужную строчку с товаром и удалял его , можете пожалуйста помочь?
Добрый вам нужны уроки по скриптам, там есть об этом, но смотреть надо с 1 урока что бы понять
Подскажите, как осуществить такой же поиск, только если ячейке несколько слов, а поиск ведется по одному слову, которое выбирается из выпадающего списка?
const text = 'Смирнов Дмитрий Петрович 1973';
var findtext = 'Смирнов';
Logger.log (splitted_text = text.split(' ')); // [Смирнов, Дмитрий, Петрович, 1973]
Logger.log (splitted_text.includes(findtext)); // TRUE
Блин круто. Спасибо. А как сделать так что бы он не суммировал значения а проверял. Допустим,
В основной базе есть код товара 10001 и цена товара, после этот же товар приходит завышенной ценой.
По условии если. 1 находим товар, 2. Суммируем количество, ( как у вас в ролике и 3. Проверяем цены. Если цена последнего прихода больше то меняем его если нет то оставляем. Спасибо за ранее
Уважаемые специалисты! Подскажите пожалуйста, как найденную этим скриптом строку, можно копировать куда-либо?
Так же как и вставлять в нее, то есть номер строкииу вас же есть, все, sheet.getRange(row,col).getValues() получаете в переменную и вставляйте эти данные куда хотите
@@stmsolution Спасибо, попробую!
@@stmsolution Не получается. Я только учусь. Сделайте пожалуйста такой урок, чтобы копировать всю строку и ее часть. Я не нашла подходящих уроков. Уверена, что он будет полезен!
Подскажите, если в массиве встречается несколько искомых значений, как сделать, чтобы скрипт нашел номера строк всех этих значений? А то если даже убираю break все равно останавливается на первом найденном.
В условии прописать при нахождении добавлять в массив строк и все, не ограничивать больше никакими условиями
@@stmsolution Это как сделать? Можно участок кода увидеть? (:
Можно как то сделать, чтобы происходил поиск только по части значения, например, есть четырехзначные числа, но поиск совпадений происходит только по их первым двум цифрам?
length + регулярные выражения
Подскажите, пожалуйста, как сделать, чтобы не учитывались пробелы после значений в ячейках? А то в некоторых они есть и тогда скрипт их не находит
На сколько помню метод strip() изначально массив обрабатывает им
@@stmsolution спасибо
А на Андроиде можно это сделать в приложении?
Не совсем понял что нужно делать
Как настроить Поиск решения в Гугл таблицах?
Не совсем понятен ваш вопрос. Опишите какие действия вам нужны.
Решение задач оптимизации
ничего не понятно
сорян друг, после кличпок и поросенко не могу тебя воспринимать серьезно.