В принципе идея верна, но: 1. Можно ли поменять алгоритм работы макроса, а именно: сейчас он выводит последнее измененное значение в проверяемом диапазоне только после изменения этого самого значения (как я понял), а хотелось, чтобы только при вводе уникального значения в столбце "Условие" срабатывал макрос и выводил последнее уже введенное значение соответствующее уникальному значению в проверяемом диапазоне. Если Вы поймете то нужно производить поиск и последующий вывод найденных значений уже введенных значений, а сейчас макрос не выводит значение, пока его не изменить. 2. Какая строка в макросе прописывает диапазон проверки на соответствие условию поиска (как мне в дальнейшем изменить и ограничить проверяемый диапазон на листе?). Как мне указать в макросе именно целевые листы для проверки ибо в документе будут и другие не задействованные в вычислениях листы?
Ну вот пример того, как я это вижу: Есть некие значения на разных листах в диапазоне от 0 - до 100 "ячеек": 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Предполагаемая формула должна просмотреть весь диапазон (от 1 - до 100 "ячейки"). После просмотра следующей позиции в диапазоне после ячейки с значением 10 формула определяет, что ячейка после значения "10" пустая и должна выводить значение "10" (так, как оно является последним) в лист "главный". Все эти операции должны проводится последовательно (по порядку листов - сначала Лист2, потом Лист3 и т.д.). Если в диапазоне не введены значение тогда должен быть ноль (или пустота). Если проверяемый диапазон полностью заполнен тогда нужно выводить последнее по счету значение.
P.S. Все проверки выполняются "по принципу ВПР", поиск проводится по уникальному значению "Условие" в моем случие.
Юрий М написал: Например, на Лист2, последняя запись в ячейке I15 (условие = 114). На листе "главный" в ячейке С15 что должно быть?
На листе "главный" в ячейке С15 должно быть содержимое ячейке I15 с "Лист2" (слово "пример") в этом конкретном случае.
Цитата
Юрий М написал: нужно обработать УЖЕ имеющиеся данные или макрос должен реагировать на вносимые изменения?
Проверяемый диапазон будет динамическим (в него постоянно будут добавляться новые данные) и как-раз последнее добавленное мы и ищем. Надеюсь ответил на Ваши вопросы
Юрий М написал: А почему в итоговой таблице Лист1 и Лист2, если изменяемых листа три - Лист2:Лист4?
Нужно искать отдельно для "Данные1" и "Данные2" в диапазонах "столбцы C:G" и "столбцы H:L" соответственно. Прошу прощения, что сразу не описал этот момент. Но это я для себя делал пример. Можно просто удалить все диапазоны с "Данные2", к ним будет применена аналогичная формула (если она будет).
Доброго времени суток. Если кто-то сталкивался с подобной задачей - поделитесь опытом. Есть некое значение (уникальный артикул, в примере "Условие") и есть на разных листах полностью идентичные по формату и структуре диапазоны но с разными значениями. Необходимо произвести выбор последнего внесенного значения (в примере это "пример") на первом "главном" листе с привязкой к артикулу. Ну и как вишенка на торте - можно ли в столбцы "Название листа1" и "Название листа2" выводить название листа, с которого было выбрано последнее внесенное значение?
Equio написал: Вы же, я так понимаю, делаете эту таблицу для себя.
Совершенно верно! Эта таблица для проверки самого себя, если можно так сказать. В Специальных программах (корпоративных) не всегда есть возможность работать, а так скинул документ Exele на ноутбук и проблем нет. И да, я это делаю только для себя. Ранее пробовал разные "варианты отображения". Остановился на таком, ну банально мне так нагляднее и удобнее работать
Equio, мне кажется, что я просто не верно использую термины, а именно дебит/кредит. Верно называть эти значения дебиторской и кредиторской задолженностью соответственно. Прошу прощения за путаницу в терминах.
Относительно же этого момента
Цитата
Equio написал: 2. Почему в строке 4, в которой на конец предыдущего месяца у вас была переплата, в расчёте остатка на конец текущего месяца эта переплата не учитывается. В ячейке G4 стоит 2500 - 1805 = 695, в то время как выглядит более соответствующим логике бизнес-процессов 190 + 2500 - 1805 = 885. То же самое во всех строках, где на конец предыдущего месяца у вас положительный баланс. В общем, мой вариант в прикреплённом файле.
то Вы полностью правы и я изменил свою формулу когда заметил эту ошибку.
Цитата
Equio написал: 1. Почему колонки F и G называются "на начало текущего месяца" в то время как по логике эти суммы имеют отношение к концу текущего месяца (A и B - остаток на конец предыдущего месяца = начало текущего месяца, D - оплачено в течение текущего месяца, E - к оплате за текущий месяц, значит F и G - остаток на конец текущего месяца).
Тоже согласен, не поменял слово "начало" на "конец", не внимательно копировал .
gling написал: При такой структуре листы должны быть и на субботу и воскресенье, или в формуле ячейки Н1, вместо -1 написать нужное число, чтобы получилось имя листа с которого взять данные.
Листы на каждый месяц Лист1 - Январь, Лист2 - Февраль и т. д.
Ну не нужно так ... Я же писал: "Я от бухгалтерии человек ОЧЕНЬ далекий", но попробую пояснить момент с дебитом. В моей таблице используются расчеты на оплату за пользование электроэнергией. Для удобства и большей наглядности я пришел такому методу, а именно: указывать Д "-" а К "+" и в этих ячейках использовать условное форматирования просто для наглядности. P.S. В моем понимании Дебит - это задолженность за пользование электроэнергией на конец отчетного месяца, кредит - наоборот, переплата свыше выставленного счета по факту. Этими терминами я на работе и оперирую в данном контексте. Если я что перепутал, то приношу извинения, так привык (да и не бухгалтер вовсе). Ну а Википедия пишет вот такое: Дебет - "...Происходит от лат. debet, что означает «он должен»...". Кредит - "...увеличение кредита означает увеличение собственных средств организации...".
Я сразу так и сделал: одним пунктом сальдо на конец месяца "-" это дебит до погашения, а "+" соответственно кредит до снятия средств на конец месяца. Но потом решил разбить сальдо на Д и К. Мне так удобнее (было раньше), сейчас хоть так, хоть так не могу ничего сделать )
gling написал: какой порядок расчета, что к чему прибавить или на что умножить?
Попробую объяснить. Дебит (Д) (ячейка В2) - это долг на начало месяца. Кредит (К) (ячейка С2) - это "переплат или излишек денег" на начало месяца.
Ну а последовательность такова: Д (ячейка В2) + К (ячейка С2) + Сума к оплате за текущий месяц (ячейка Е2) - Начисления на конец текущего месяца (ячейка F2). Но одна из главных моих проблем заключается в минусовых значениях Д (ячейка В2) и по этому я просто не могу написать логическую последовательность в формуле. В примере тоже указал последовательность.
Сижу уже довольно долгое время над созданием некой таблицы для работы. От бухгалтерии и данная таблица и я очень далеки но в ней (таблице) есть такие столбцы, как дебит и кредит. Ну вот собственно в чем проблема: либо уже перетрудился , либо просто не хватает ума но факт на лицо - не могу написать настолько элементарную формулу (пробовал через ЕСЛИ). Максимум на что меня хватило - это посчитать разницу в двух ячейках, а нужно чтобы было или Дебит (Д) отрицательный а Кредит (К) нулевой, либо Дебит (Д) нулевой, а Кредит (К) положительный, либо оба нулевых. У меня так написать формулу не хватает ума. Прямо стыдно, даже на листочке пробовал писать формулу - вроде получилась. Перенес в Exele - и получился бред . В примере попробовал все подробно описать. Помогите если можете плз.
Добрый вечер. Столкнулся с трудностью, надеюсь поможете. Есть у меня таблица со значениями, которые каждый месяц изменяются. Конечные на текущий месяц - это начальные на следующий (обязательно следующее значение должно быть больше предыдущего!). Как поставить проверку данных я знаю, но я могу ставить проверку только на одну строчку за раз, а строчек 700+. Вот и трудность, можно ли выделить все строчки (ячейки для проверки) и задать подобное условие (или формулу в проверке данных прописать) за один раз, а то не охота 700+ условий на каждый месяц задавать
P.S. В поиске на форуме такого не нашел (может просто не правильно условие в поиске задал).
Выделяете диапазон лишних ячеек в 1 столбце, потом удалить строки. Как быстро выделять диапазон смотрим: Быстрое заполнение диапазона значениями или формулами
В документе 27000 строк - мне же нужно максимум 100. Возник вопрос - как удалить лишние пустые строки после таблицы? Просто скопировать информацию на новый лист/книгу я могу, но в моем случае это не подойдёт. Нужно именно удалить в существующем документе ненужные строки, а то ползунок вертикальной прокрутки вообще бесполезен .
Фродо написал: можете тупа на листке попробовать ручкой решить
Я так и сделал и примерно так и написал, но в каком-то моменте допустил ошибку и не мог понять как правильно записать условие (всё время EXEL на меня ругался за ошибки в формуле).
Цитата
Фродо написал: это логика понимая её вы формулу сами нарисуете
Просто я запутался и "завис" Спасибо за помощь, сейчас попробую.
Фродо написал: если x>100 то 100* т1 +( если х 600 то (х-600) *т3
Спасибо, но проблема у меня именно в условиях "ЕСЛИ": Пример Нужно подсчитать чисто 1000. В одной строке нужно прописать примерно такой подсчет: Расбить значение (1000) на три составляющих и просумировать: 0-100х0.57 -> 100-600x0.99 -> 600-(до конца числа - 1000)х1.56. И просуммировать каждое полученное значение: 57+495+624=1176,00.