New,
О, так работает! Благодарю, потом попробую понять что там к чему, давно с макросами дела не имел.
О, так работает! Благодарю, потом попробую понять что там к чему, давно с макросами дела не имел.
30.03.2021 16:03:14
МатросНаЗебре, не уверен, что правильно ориентируюсь во всем этом.
Добавил файл с модулем, туда вставил текст макроса. Присвоил ему имя. Он появился в списке макросов книги. Ввожу текст в ячейку, в книге, редактор закрыл. Нажимаю Макросы, выполнить - ошибка |
|
|
30.03.2021 15:53:32
МатросНаЗебре,
Выдает ошибку на строке LatToCyr = Join(a, "") Я вставил макрос. Может это не из той оперы и речь идёт о надстройке? так её нет и не будет. Могу только макрос в книгу добавить.
Изменено: |
|
|
22.04.2019 14:45:49
galinka2005,
В ячейку (B2) помещаем формулу, которая берет данные из ячеек С2...N2 =СЦЕПИТЬ(C2;" ";D2;" ";E2;" ";F2;" ";G2;" ";H2;" ";I2;" ";J2;" ";K2;" ";L2;" ";M2;" ";N2;" ";) Результат получаем в ячейку, в которую вставляем формулу (у меня это А1) =СЖПРОБЕЛЫ(B2) Я прописал 12 столбцов, у меня это месяцы, но вы легко можете продолжить до 15-ти. Вместо " " можете вставлять запятые с пробелом или без (", " или ",") Вот как выглядит результат
Изменено: |
|
|
18.04.2019 14:43:51
vasily86,
А вот такой способ посмотрите. Сравнение происходит по условию, что желтая дата больше. Можно задавать желтая неравно остальным или желтая больше или равно. Для меньше я пока не допилил ![]() Формула ищет наименьшее различие между заданной датой и остальными датами и выводит данные из колонок A,B,C если условие соблюдается. Это, разумеется, на коленке склёпано и архаично, но работает. При этом ничего вручную вносить не нужно, кроме даты в желтую ячейку.
Изменено: |
|
|
14.02.2019 17:10:34
Mershik,
Начинается все с того, что вводится сумма акта. Акт имеет дату, таблица показывает, когда должна быть оплата этого акта. Напротив суммы акта правее при проведении оплаты ставится сумма оплаты. Для простоты будем считать, что сумма оплаты равна сумме акта. Над суммой оплаты ставится дата оплаты. Формула просматривает даты оплат от первой ячейки до последней, если находит январь 2019 года, скирдует суммы оплат под датой в ячейку месяца январь 2019 в верхнюю строку, зеленую. Тоже происходит со следующим месяцем и так далее. Если встречается январь 2020 года, эти суммы оплат скирдуются уже в другую колонку января, январь 2020. Для этого значение даты сравнивается не только с месяцем, но и с годом.
Изменено: |
|
|
14.02.2019 16:55:10
В своей работе с договорами я использую вот такую таблицу.
Таблица выбирает платежи по проведенным актам, разделяя их по месяцам текущего и следующего года. Цель всех этих телодвижений - отсортировать с помощью фильтра конкретный инвестпроект, чтобы было видно выполнение и оплаты в каждый месяц и год. Сразу оговорюсь, в нынешнем виде всё работает правильно. Но есть одно но. Количество договоров увеличивается и приходится вставлять новую карточку на лист, под уже имеющимися. Фильтр просматривает их все. В каждой новой карточке формулу выбора платежей приходится править вручную, потому что там абсолютные ссылки на ячейку. Пробовал вставлять сразу всю карточку целиком с относительными ссылками, но в течение года иногда к некоторым карточкам приходится добавлять строки внутрь, и тогда относительные ссылки нарушаются. Поэтому нужны абсолютные. Создать сразу шаблон на 100500 договоров тоже не вариант, файл получается огромный и по сети с ним работать неудобно. Есть ли способ сократить количество знаков формулы в ячейке BK29 и правее, чтобы редактирование формул сравнения дат при вставке новой карточки занимало меньше времени? Можно ли вместо конструкции из формул, сравнивающих даты "ЕСЛИ(ГОД($W$28)=20..;ЕСЛИ(МЕСЯЦ($W$28)=1;...)" применять какую-то более короткую? Прилагаю заполненный пример, на котором видно, что куда выбирается.
Изменено: |
|
|
11.02.2019 16:36:25
Александр,
В таблице два договора, для первого, где поставка не каждый месяц, формула работает правильно. Следующую поставку обещает в апреле. Но для второго не показывает поставку в текущем месяце - феврале, хотя она есть и февраль ещё не закончился. А надо, чтобы показывал. Больше и равно по отношению к функции СЕГОДНЯ() не помогает |
|
|
11.02.2019 12:34:04
Александр,
У нас версия 10 и 13 на работе, наверно какая-то урезанная. Проверил Вашу формулу, немного не то - февраль пока не закончился, должно показывать поставку в феврале, но показывает уже следующий месяц. Плюс единица в конце это для чего? Решил, что прибавляет один месяц к результату вычислений, если удаляю и есть выполнение в феврале, начинает показывать февраль, но если нет выполнения пишет ошибку...
Изменено: |
|
|
11.02.2019 11:32:14
Приветствую уважаемое сообщество.
Столкнулся с проблемой на ровном месте, попробую описать (пример прилагаю) Есть таблица договоров, в каждом договоре есть график выполнения (поставки) по месяцам. В некоторых месяцах (T14:T25) запланировано выполнение договора, напротив этих месяцев стоит процент от суммы договора (U14:U25). Идея была следующей - ввести в ячейку U10 формулу, которая бы показывала, в каком следующем месяце будет выполнение (поставка). Причем, формула должна показывать текущий или следующий по порядку месяц, но не показывать предыдущий. С датами платежей (T10) это работает без проблем - отображается только следующая дата и прячется прошедшая. А с месяцами так не получается. Пробовал вводить месяц с помощью формата (31.03.2019 - отображается Март) - но тоже не работает. Испробовал следующие конструкции. Не работает, выводит первую непустую строку
Не работает, выводит первую непустую строку
Не работает, выдает ошибку
В конце концов, сделал компромиссный вариант - формула выводит название текущего или следующего месяца, если он соответствует месяцу роллингового планирования в ячейке T8. Правее ячейки T8 суммируется планируемое выполнение по всем договорам на выбранный месяц, но это уже к делу не относится Хоть так работает и ладно, но... Подскажите пожалуйста, почему отображение следующей даты работает при выборе данных из строки (формула в ячейке T10) и не работает при выборе значений из столбца (приведенные первый и второй неработающие примеры).
Изменено: |
|||||||
|