Форум по VBA и MS Office

VBA, Excel => VBA, макросы в Excel => Тема начата: Посетитель от 04 ноября 2023, 16:52

Название: Обновление размера таблицы
Отправлено: Посетитель от 04 ноября 2023, 16:52
Добрый день!
Помогите разобраться пожалуйста, можно ли написать макрос, который будет автоматически изменять диапазон в зависимости от размера таблицы?

Вот я, например, удаляю все данные таблицы с ячейки B6 и вставляю новую таблицу, которая меньше или больше. Хочу, чтобы размер таблицы (см. скриншот) автоматически подстраивался под новые данные, диапазон должен быть ни больше, ни меньше. Была попытка сделать через запись макроса, но в макросе задается конкретный диапазон который используется во время записи:
ActiveSheet.ListObjects("Main_Table").Resize Range("$B$6:$M$3199")
Можно ли сделать эту часть универсальной?
Название: Обновление размера таблицы
Отправлено: Администратор от 04 ноября 2023, 17:01
Написал вам два письма на почту с заголовком "Письмо с Форума по VBA, Excel и Word". Написал именно на почту, а не на форум.

В решении используется команда Find, она тяжело предсказуема, если есть скрытые строки. Поэтому, если есть скрытые строки, может быть неправильный результат.

Sub Macro()
 
    Dim Lr As Long
 
    Lr = Columns("B:M").Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, _
        MatchCase:=False, SearchFormat:=False).Row
    ActiveSheet.ListObjects("Main_Table").Resize Range("$B$6:$M$" & Lr)

End Sub
Название: Обновление размера таблицы
Отправлено: Посетитель от 04 ноября 2023, 19:23
Размер таблицы остается прежним при выполнении такого макроса, хотя новые данные занимают меньше строк. Внизу осталась таблица с пустыми строками, которые макрос все равно цепляет, ничего не поменялось. Нужно сделать так, чтобы макрос цеплял именно строки со значениями и менял размер таблицы в соответствие с количеством таких строк.
Название: Обновление размера таблицы
Отправлено: Администратор от 04 ноября 2023, 20:43
Внесены изменения в ответ #1.
Название: Обновление размера таблицы
Отправлено: Посетитель от 05 ноября 2023, 10:32
Получилось, спасибо большое!!