БМВ, Спасибо за участие)
Правда в итоге решила другим способом. Более заморочистым, но работает как мне надо.
Правда в итоге решила другим способом. Более заморочистым, но работает как мне надо.
12.03.2024 05:32:28
И кстати, в идеале бы еще было, чтобы в случае если расчет в колонке AD был равен 0, то вместо нуля оставалась бы просто пустая ячейка.
Изменено: |
|||||||
|
12.03.2024 02:32:11
Добрый день,
В макросе содержится формула. Нужно чтобы из колонки с формулой AF переносились значения в итоговую колонку AD. Без автофильтров работает. Но важно чтобы работало с автофильтрами в предыдущих колонках, с ними перестает работать. Как сделать чтобы работало с автофильтрами?
Изменено: |
|||
|
12.10.2023 09:29:14
Ігор Гончаренко, Объясню зачем мне макрос для этой задачи. Он будет применяться не к пустому файлу, а большому отчету, к которому нужно применить сложное условное форматирование. А данные для условного форматирования в другой книге и ссылки в формулы в условном форматировании вставлять нельзя. Поэтому я начала макрос с того, чтобы сначала данные переносились.
|
|
|
25.09.2023 08:22:05
Sanja, Не пустую, а с тремя тестовыми листами). Пардон, ранее когда просила помощи то всегда отдельно вставляла код и отдельно файл-пример, ничего другого еще никто не просил). Тут просто код и задача совсем простенькие, поэтому как-то так глупо получилось.
evgeniygeo, Aнaстaсия, Спасибо огромное! Sh.Activate и все заработало как мне нужно. |
|
|
25.09.2023 05:44:14
Добрый день,
Есть документ с огромным количеством листов. Нужно чтобы при запуске макроса на каждом листе вносились данные (это получилось) и при этом чтобы активировалась (т.е. то что происходит когда мы курсором нажимаем на ячейку) одна и та же ячейка на каждом листе. Код ниже. В нем через Cells или Range получается выделить ячейку только на первом листе. А если делать Sh.Cells или Sh.Range по типу заполняемых данными ячеек, то возникает ошибка.
Изменено: |
|||
|
22.06.2023 03:36:59
Да, спасибо огромное, это решило все проблемы. Сейчас все работает прекрасно.
Только хотелось бы разобраться, что делает эта строка ".Value = .Value". В какой рендж подтягивает понятно, а вот где источник непонятно. Почему без этой строки у меня все работает и с фильтрами и без? И каково ее назначение в коде, раз она там появлялась. Пыталась нагуглить, почитала об этом свойстве. Но прямых ответов не нашла. Хочется разобраться. Буду благодарна за объяснение. |
|
|
21.06.2023 10:02:46
Спасибо огромное! Работать макрос стал действительно шустрее. Завтра в начале рабочего дня проведу ему полный тестдрайв).
Только он теперь перестает работать, если использовать любые фильтры по колонкам. Можно ли как-то подправить макрос парой строк так, чтобы при фильтрации (например, в первой колонке "Магазины" файла "Заказ" выбрать числа 1 и 2) можно было запускать этот макрос и он тоже работал? Или в данном случае уже полностью перекраивать код надо? |
|
|
21.06.2023 03:04:34
Добрый день,
Помогите допилить макрос, пожалуйста. Суть такая. Есть таблица "Заказ", прикрепляю упрощенный пример. В реальности в ней большое и динамическое количество строк и оно растет. Нужно чтобы макрос с помощью ВПР прикреплял в крайний столбец данные из таблицы "Кратности". Мой макрос работает, но т.к. в первой таблице динамическое количество строк, то приходится корретировать рендж в третью строку снизу, чтобы макрос срабатывал на ограниченное количество строк, а не на весь лист, включая незаполненные строки. При этом даже с этим ограничением макрос подвисает. Можно ли как-то оптимизировать эту задачу? Как задать конечную строку в динамической таблице, чтобы впр срабатывал до последней заполненной строки? Дополнительный вопрос. Можно ли в строчку с формулой ВПР в название файла вписать как-то переменную, чтобы туда каждый раз подставлялось имя открываемого файла и при этом он не был всегда назван "Кратности1"? Заранее благодарю.
|
|||
|
02.12.2022 12:28:15
_Boroda_, Ухты, теперь поняла как с этим куском обращаться) Спасибо!
Ігор Гончаренко, Ахах) ну в общем... Однажды захотелось сделать макрос, на который возможностей макросрекордера не хватало. Погуглила, нашла нечто, примерно делающее, что мне надо и это нечто стало базой моего будущего макроса. На нем же училась и постепенно получила начальные самые поверхностные знания, позволяющие читать код (вот сейчас, наверное, последняя строчка той базы перестала быть таинственной)). После того, как первый настоящий (не рекордовый) макрос оброс всеми необходимыми функциями и заработал, решила переписать старые макросы, сделанные рекордером. Чтоб работало без кучи костылей). Пригодился кусок из первого макроса - благо переменные не корабли, как не назови - все равно работают! За что спасибо им)). |
|
|
02.12.2022 09:57:22
Добрый день,
Не могу понять, как заставить макрос вставлять данные в новой книге не в А1 ячейку, а в А2. Чтобы строка 1 оставалась полностью пустой. Подскажите, пожалуйста. Если делаю Then Last Row = 2, то макрос поочередно перезаписывает все строки таблицы в строку 2. А если Last row = 1, то все ок, но мне нужно чтобы самая верхняя строка оставалась пустой.
Изменено: |
|||
|
21.11.2022 14:35:13
Так и не смогла прикрутить эту конструкцию к коду: выходило, что либо копирует только все скрытые строки, то копирует и видимые и скрытые. В итоге сделала свой макрос через костыль с копированием диапазона без скрытых ячеек в другую книгу.
Но все-таки, ради общего развития, как правильно было вставить эту конструкцию в код? И еще, чтобы новую тему не создавать: почему если я меняю Workbooks("start.xlsx") на thisworkbook, то почему возникает type mismatch? Разве, по сути, происходит не то же самое, только в первом случае я указываю имя файла, а во втором книгу, из которой запускается макрос? |
|
|
20.11.2022 09:29:53
Добрый день,
Скопировала я чужой код со строкой.
И очень смущает меня это [А1]. Честно гуглила, но, видимо, запрос я как-то неверно составляю, потому что ответ найти так и не удапось. Зато нашлось наставление никогда не использовать квадратные скобки в коде). Правда, без этого [А1] макрос почему-то ломается и не работает. Разжуйте, пожалуйста, что же это такое. |
|||
|
20.11.2022 08:35:13
Добрый день,
Подскажите, в какое место правильно вставить SpecialCells(xlCellTypeVisible) чтобы макрос обрабатывал только видимые строки, игнорируя скрытые. Вот маленький кусочек кода и источник и принимающий данные файлы. В исходнике скрыла столбцы.
Изменено: |
|||
|
19.11.2022 05:20:28
Добрый день,
Подскажите, есть ли возможность сохранения файла, выбранного с помощью Application.GetOpenFilename под тем же именем, но в другом месте? Можно это как то прописать в .SaveAs ? У меня есть общая таблица, которую с помощью макроса я раскидываю по готовым шаблонам с определенными именами. Шаблоны лежат в папках и макрос GetOpenFilename позволяет выбирать нужные. Я бы хотела чтобы макрос после заполнения шаблона сохранял его, допустим, на рабочий стол, но под тем же именем, под которым этот шаблон был изначально. |
|
|
19.11.2022 03:43:20
Так и не смогла разобраться с этим более усложненным кодом. В итоге взяла свой простой, избавилась в нем от thisworkbooks и, о чудо, заработало!))
Все равно для файла-исходника есть простой макрос чтобы собирал данные в читаемый вид. Сделаю чтобы он еще и сохранял под определенным именем, да и фиг с ним. Зато работает T_T |
|
|
18.11.2022 05:33:58
Добрый день,
Я не очень в vba, но потребовалось и собрала макрос для работы. Он даже работал (я его еще допиливаю до полного удобства) пока не добавила возможность выбирать файл вместо работы с забитым в макрос именем файла по умолчанию. Теперь какой-то mismatch. Гуглила. Понимаю, что дело в типе данных, но не понимаю, что именно надо поправить. Смысл в том, чтобы при запуске макроса данные из таблицы Start переносились в шаблон (имена шаблонов меняются, поэтому я добавила выбор файла). В данном примере файл Finish. Перенос данных осуществляется по правилу: первая колонка = имя листа, куда переносить. Остальные колонки переносятся на эти листы. Строка Format$(0, A(i, 1)) имеет такой вид, потому что мне необходимо чтобы "0" в названии листов учитывался. Помогите, пожалуйста, понять и исправить, чего от меня хочет этот UBound.
Изменено: |
|||
|