Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 След.
Макрос для автофильтрации сводной таблицы, Автоматическое обновление и изменение даты в фильтре сводной таблицы
 
Всем здравствуйте.
Не теряю надежду на подсказку...  :)
После длительных поисков нашла маленький макрос. Он работает - получается обновленная сводная таблица, но за "завтрашнее число".  Как переделать на "сегодня"? И как сделать, чтобы можно было вывести либо диапазон дат (через ссылки на две ячейки, в которых будут эти даты), либо задать условие "все даты, меньше сегодня"? Файл с макросом почему-то не загружается...
Код
Private Sub Worksheet_Activate() 
ActiveSheet.PivotTables("Сводная таблица1").PivotCache.Refresh 
With ActiveSheet.PivotTables("Сводная таблица1").PivotFields("Due Date")         
.ClearAllFilters         
.CurrentPage = Date + 1     
End With 
End Sub
Изменено: ElenaAC - 05.06.2020 08:27:56
Макрос для автофильтрации сводной таблицы, Автоматическое обновление и изменение даты в фильтре сводной таблицы
 
Файл не прикрепился сразу...
Макрос для автофильтрации сводной таблицы, Автоматическое обновление и изменение даты в фильтре сводной таблицы
 
Здравствуйте, уважаемые форумчане.
Имеется таблица с данными по отгрузкам продукции клиентам.
Ежедневно заносятся данные по новым отгрузкам за предыдущий день и поступившим оплатам за продукцию.
Что хотелось бы получить: после занесения данных на лист "despatches_RUS" открыть "Лист1" и чтобы там при открытии автоматически бы обновились данные в двух сводных таблицах - в первой таблице ("Сводная таблица 2") в фильтре дата изменилась бы на "сегодня" - как в ячейке B1, во второй таблице ("Сводная таблица 3")  дата стала бы "завтрашней" - как в ячейке E1. И обновились бы суммы по клиентам.
Т.е. я разношу поступившие платежи, затем открываю Лист1 и вижу, сколько денег от какого клиента можно ожидать сегодня/завтра.
Конечно, это не так сложно сделать вручную - обновить сводные таблицы и поменять даты в фильтрах, но наверное можно "ускорить процесс"?
Видела в инете похожие запросы, но моих знаний не хватает, чтобы приспособить их к своему примеру. С макросами я на "Вы" и с реверансами.
Буду очень признательна, если кто-то поможет.
Файл с примером в приложении.
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
На всякий случай файл прикладываю.
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Всем здравствуйте!
Я частично разобралась в своей "проблеме". Макрос теперь работает (оказалось, что даже при задании имени для диапазона нельзя использовать $ в ссылке). Так что он работает, но... Если мне нужно на листе Импорт провести какие-то манипуляции (заново отсортировать строки, что-то удалить или добавить), которые требуют выделения мышью всей строки, сразу появляется сообщение об ошибке (скрины прикрепляю). Как выяснилось, на дальнейшую работу макроса это не влияет, но это очень мешает работе - нужно постоянно нажимать End, чтобы это окно закрылось.
И второй вопрос, еще более важный для меня - макрос выделяет цветом только самое последнее изменение. А у меня процесс внесения этих изменений следующий - раз в неделю мне присылают отчет с новыми данными и я должна внести корректировки в свой файл. И на листе Импорт у меня будет очень много изменений дат в столбце N и нужно, чтобы на листе 1 все ячейки, связанные с этими изменившимися данными, были выделены цветом. А макрос сейчас работает по циклу, когда каждое следующее изменение "стирает" предыдущее. Можно ли с этим что-то сделать или такая задача невыполнима? В таком виде, как сейчас, он для меня, получается, бесполезен, увы...
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Опять я накосячила, вроде прикрепляла файл, а его нет...
Книга 1 - вроде работает, Книга 1-копия - уже нет - вообще ничего не удаляла, просто выделила одну из строк в импорте и сразу ошибка...
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Help!!! Что-то сломалось... Я удалила некоторые строки на листе Импорт, еще по некоторым произошло перемещение из плановых в верхнюю часть (т.к. появились инвойсы под эти заказы). И все....макрос не работает. Даже если просто выделить целиком какую-то строку, появляется окно с сообщением об ошибке, при открытии Разработчика желтым подсвечено r = Target.Value и при наведении курсора на r появляется значение r=43654
Что это значит? И как мне менять данные (удалять, добавлять строки на листе Импорт), чтобы не было ошибок??
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
А я уже там поправила - увеличила до 500 строк, больше никогда не бывает. Спасибо. Меня другой момент заинтересовал - когда нужно было сегодня удалить с листа Импорт два верхних инвойса, которые оплатили, макрос выдал предупреждение об ошибке. Подсветил желтым вот эту строку:
Код
If Not Intersect(Target, Range("N2:N28"))
Пришлось нажать End, после чего позволил удалить. Вроде бы все продолжает работать. Видимо ругался, что лезу в его рабочий диапазон.
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Еще раз всем огромное спасибо за помощь! Все получилось, все работает!
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Очень сильно извиняюсь, я кажется совсем затупила...даже стыдно... Сейчас дома попробовала опять с нуля (дома старенький 2007 эксель) и тут "разглядела", что в формулах есть-таки $$ - там где идет расчет с учетом праздничных дней, а я про них забыла... ввела их через именованный диапазон и все закрасилось! И никакой общий доступ не включала! Не знаю, как завтра на работе встанет на том экселе, но надеюсь что причина только в этом была (не считая моей дырявой головы).
Спасибо всем, кто терпеливо отвечает на тупые вопросы!!! Если все заработает, будет очередное облегчение для глаз и экономия времени.  
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Не показывает у меня код, просто пустое окно.... После нажатия Alt+F11
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
V, я вообще понятия не имела про этот режим.... (темные мы люди).
По порядку: у меня стоит Microsoft Office Home and Business 2019. Как оказалось, чтобы включить в нем режим отслеживания, нужно столько операций проделать... Преобразовала таблицы в диапазоны, включила общий доступ к книге, включила отслеживание... После этого появилось предупреждение, что этот файл содержит макрос, который при включенном общем доступе невозможно посмотреть и изменить...
В итоге - в ячейках вижу комментарии о сделанных изменениях, при попытке просмотреть исходный код появляется сообщение "Project is unviewable". При нажатии F8 появляется сообщение "Run-time error '13 Type mismatch.
Как поставить в коде точку основа (и что это вообще такое) не знаю..
Ссылки все относительные, без $.
Что я делаю не так? Куда теперь лезть?
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
V, вставила в модуль, меняю дату в столбце N листа Импорт, на первом листе даты меняются, но заливки как не было, так и нет... Файл в приложении.
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
buchlotnik, спасибо, но к сожалению стоит другая версия, в ней этой надстройки нет.
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Никто не знает? Или это вообще невозможно сделать? Может быть, можно хотя бы выделить все зависимые ячейки, которые зависят от конкретной ячейки? Стандартными средствами excel это можно сделать только для одного листа (т.е. и исходная и зависимые ячейки находятся на одном листе), а у меня все зависимые ячейки находятся на другом листе...
Изменение заливки зависимых ячеек, Изменение заливки ячеек при изменении результата вычисления формул в этих ячейках
 
Здравствуйте, уважаемые форумчане!
Пожалуйста, помогите решить проблему. Похожие темки почитала, но чуть не то....
Есть таблица, куда заносятся счета и планируемые платежи. На листе 1 по транспорту и таможне сроки оплаты в столбце J привязаны к ячейкам столбца N на листе ИМПОРТ.
Можно ли сделать, чтобы при внесении изменений в ячейки столбца N на листе ИМПОРТ те ячейки столбца J листа 1, в которых поменялись из-за этого значения, окрасились бы в зеленый цвет? В остальных ячейках заливка отсутствует.

Вот в этой теме - https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=56709&MID=473160#message473160 - по ссылке нашла макрос, но он срабатывает только при ручном вводе данных, а при "косвенном" - через функцию  - не работает....

Буду очень признательна за помощь! Файл-пример в приложении.
P.S. макросы писать не умею...только копировать...  :oops:  
Автоматический переход на строку в таблице по условию
 
Спасибо! Я пыталась так сделать, но поскольку код читать не умею, не поняла, какая строчка там будет лишней и у меня ошибку выдавало. Теперь работает... Только вот есть еще один мой косяк.... В примере "под таблицей" ничего нет, пустые строчки, а в отчете там много чего... и в результате строчки копируются, но чуть-чуть не туда... Можно им как-то это "объяснить"? Надо было конечно сразу такую таблицу и выложить, но у меня как всегда аппетиты растут по мере решения задачи (я ж не думала, что можно даже копировать автоматом)...
Автоматический переход на строку в таблице по условию
 
Юрий М, спасибо, извините, что я так туплю... Ведь работаю с выпадающими списками и именованными диапазонам, а тут не разглядела... Перенесла в отчет, работает - находит имя и сразу отфильтровывает.
Можно еще вопрос? (надеюсь, что последний...) А как сделать, чтобы два варианта Вашего макроса работали параллельно и независимо друг от друга? Т.е. если мне нужно найти название и отфильтровать список, я ввожу имя в ячейку В2 (ну или выбираю его из списка), а если мне нужно найти и сразу скопировать в конец таблицы (как у Вас было в первом варианте), то я делаю что-то другое (ввожу имя в другую ячейку) и фильтр при этом не включается?
Прилагаю свой пример с Вашим макросом и добавленным фильтром.
Автоматический переход на строку в таблице по условию
 
Юрий М, хелп, я кажется поторопилась радоваться... Стала переносить макрос в свой отчет и выдает ошибку вот  на этой строке:
Код
 Set Rng = Sheets("name").Range("myrange").Find(what:=Target, LookIn:=xlValues, LookAt:=xlWhole, SearchDirection:=xlPrevious)

Скажите, если у меня в отчете есть другие листы, кроме Suppliers... и name, это как-то влияет на макрос? Лист с названиями я расположила после  листа Suppliers... и назвала его так же, как в примере - name. До и после этих листов есть еще много других...

Автоматический переход на строку в таблице по условию
 
Юрий, огромнейшее спасибо за помощь! Все получилось, буду дорабатывать отчет.
Макрос с автофильтром оказывается не работает, если в таблице не включен фильтр. Я вначале тоже не поняла - почему в моем отчете работает, а в пример вставила и там нет, потом дошло - включила фильтр, добавила в Ваш макрос сроку вызова "автофильтра" и все получилось. Просто чудеса! Как здорово, что есть желающие помочь таким чукчам, как я.
За статью тоже спасибо, буду изучать.
Автоматический переход на строку в таблице по условию
 
Работает, спасибо! А как туда запихнуть автофильтр? Не хватает мозгов...  :oops:  
Автоматический переход на строку в таблице по условию
 
Юрий М, круто, работает!!! Спасибо большое. Таблицу естественно сама сделаю.)))
Про дополнение - можно "урезать" макрос так, чтобы он находил нужного "родственника", делал активной эту найденную ячейку и все, копирование не делал бы? Ну или сразу дописать туда включение автофильтра.
Т.е. - если ввести имя в ячейку В2, то будет как Вы сейчас сделали - копирование строки в первую свободную.
А если ввести допустим в В1, то появится отфильтрованный список по этому поставщику. Можно так? Будет просто песня...
У меня сейчас вот такой макрос для автофильтра:
Код
Sub ActFilter()
    Dim rF As Range
    Set rF = Intersect(ActiveCell.EntireColumn, ActiveSheet.UsedRange)
    If rF Is Nothing Then Exit Sub
    rF.AutoFilter 2, ActiveCell.Value
End Sub
Автоматический переход на строку в таблице по условию
 
Юрий М, да, про них. Но как я уже написала выше, нужно не только скопировать определенную строку, когда появился новый счет, нужно найти уже имеющиеся строки с каким-то определенным поставщиком - чтобы занести дату поступления товара по счету, чтобы проверить, а был-ли вообще конкретный счет по такому-то поставщику, посмотреть, по каким счетам еще не было поступления и т.д. Т.е. копирование и добавление это только часть работы. Фильтром приходится пользоваться постоянно и когда там больше 400 наименований, да еще на "латинице", ну реально "глаза в кучу", хоть и знаешь, кого на какую букву искать. Макрос с автофильтом я уже встроила, работает шикарно - "встал" на ячейку с нужным поставщиком, нажал кнопочку и весь список перед глазами. Только вот еще найти надо эту нужную ячейку.  
Автоматический переход на строку в таблице по условию
 
БМВ, спасибо, я умею пользоваться функциями ВПР и ПОИСКПОЗ. В других отчетах их достаточно, но в этом нужно не только копировать строки, но и искать уже имеющиеся. Я нашла на этом сайте макрос для автофильтра по значению текущей ячейки. Поэтому "мечта" такая - ввести название поставщика на русском в выбранную ячейку, активировать поиск строки с этим поставщиком, после нахождения нажать кнопку с запуском макроса "автофильтр" и готов список всех счетов по данному поставщику. Мне кажется, это получится и быстрее и самое главное меньше устанут глаза... Когда целыми днями работаешь с такими таблицами, очень тяжело. Если знаете, как это реализовать, подскажите, если нет, ну может кто еще подскажет...
Автоматический переход на строку в таблице по условию
 
БМВ, извините, пыталась как можно короче, но в итоге выходит, что наоборот не дописала...
Спасибо за ответ, но в Вашем примере копируется только название, т.е. значения ячеек в столбцах F и G мне придется вручную копировать откуда-то еще (писать каждый раз на английском "статью затрат" получится еще дольше). Т.е. мне намного проще и быстрее целиком скопировать и вставить строку. Плюс еще один момент - после занесения счетов еще нужно занести дату поступления товаров в столбец D (это бывает спустя длительное время), для этого опять надо "искать" нужного поставщика. Хотела убить двух зайцев...
Александр, спасибо, Ваш пример посмотрю на работе, дома PQ не стоит.
Автоматический переход на строку в таблице по условию
 
Всем здравствуйте!
Помогите, если это возможно, решить следующую задачу.
Дано:
Имеется таблица, в которую заносятся данные по счетам от поставщиков. Таблица ведется нарастающим, период - 2 года. На данный момент там более 5000 строк и более 400 наименований поставщиков. Наименования поставщиков обязательно пишутся на латинице!
В связи с чем есть неудобство: когда нужно добавлять новый счет, приходится искать нужного поставщика через фильтр, при этом нужно помнить, как ты его "обозвал" на латинице, т.е. в каком секторе искать, на какую букву...
Чего хотелось бы:
На отдельном листе сделать таблицу, в которой соотнести названия поставщиков на латинице и "нормальные". Далее, на основном листе ввести на русском наименование поставщика (которого нужно найти и добавить) в ячейку допустим В2. После чего должен сработать поиск по столбцу "В" и найти и выделить строку, содержащую соответствующее наименование. Т.е. "программа" смотрит на название в ячейке "В2", идет на лист "name", находит там это имя в столбце "В", запоминает соответствующее ему имя из столбца "А" и на основном листе находит и показывает строку с этим названием (желательно первую снизу, а не сверху). Я эту строку копирую, вставляю в конец таблицы, исправляю прочие данные (№, дата счет, сумма и т.д.) и перехожу к следующему счету...
Реально такое сделать?
Макросами сама не владею, написать не могу...
Файл с примером прилагается.
Буду очень признательна за помощь. Устала уже с этим огромным списком в фильтре...
Цикл для копирования ячеек по условию
 
k61, спасибо, чуть не "убилась", но вроде сделала... Извините, что сразу все пожелания как надо не озвучила (наивно думала, что потом сама докручу, но тут столько всегда тонкостей, что "чайнику" сложно о них догадаться. Еще раз большое спасибо за помощь!
Цикл для копирования ячеек по условию
 
А может кто-нибудь подсказать, как сделать, чтобы этот макрос запускался с другого листа? (Я бы тогда назначила для одной кнопки последовательность макросов). В реальной таблице лист S, в модуль которого встроен макрос, имеет порядковый номер 17.
Цикл для копирования ячеек по условию
 
k61, спасибо огромное, Ваш вариант удобнее - ничего не надо выделять. С вариантом Михаила тоже разобралась, все работает. Еще раз всем большое спасибо за помощь, пойду реальную табличку до ума доводить.
Цикл для копирования ячеек по условию
 
Ваша таблица работает. Сейчас буду разбираться со всеми вариантами, спасибо большое.
Страницы: 1 2 3 След.
Наверх