Спасибо за урок. Очень жду продолжения. Замечена одна неточность: при форматировании всех колонок считаешь количество строк, а форматируешь колонки. Насколько понимаю, правильным было бы записать ListObj.ListColumns.Count
В видео допущен ошибка на 22:55 при установке ширины колонок. Количество столбцов нужно определять ListObj.ListColumns.Count, а не через свойство ListRows
Извините, такой вопрос. В примере, когда делали ширину колонок 20. В первой строке цикла написали For i=1 to ListObjRows.Count Вопрос: Разве строки надо тут считать? Если мы колонки переделываем, то по логике надо колонки подсчитать и потом по количеству колонок прогнать цикл. А если у вас все правильно, поясните пожалуйста этот момент. Спасибо.
Спасибо за Вашу работу, очень полезно, подскажите как сделать чтобы номер столбца который нужно добавить ListObj.ListColumns.Add 7 вставлялся автоматически например у меня лист "товар", ячейка "А15" = значение "6" ListObj.ListColumns.Add 7 (вместо "7" стало "6"). спасибо
Вопрос. Раз невозможно указать в одной книге два одинаковых имени умной таблицы - зачем каждый раз обращаться к ней через лист? Нет ли способа искать таблицу по имени сразу во всей книге? То есть - вместо ActiveWorkbook.Sheets("Лист1").ListObjects("Таблиццо") писать просто ActiveWorkbook.ListObjects("Таблиццо")
Спасибо за информативное и понятное видео! Подскажите, а можно ли обратиться к столбцу не по его номеру, а по названию? Если да, то как это сделать? Буду Вам очень благодарна, если поможете со следующей задачей: как прописать формулу в умной таблице не по индексам ячейки (А2*В2), а по названиям столбцов?
Easy Excel задача в том, что если добавится до запуска макроса столбец, то расчет макроса добьется, а если привязаться к названию столбца, то ничего менять не нужно
Как задать имя умной таблицы не жестко. Дело в том, что лист будет копироваться. И умная таблица на скопированном листе будет иметь другое имя - автоматически добавляется числовой индекс в конце. Если сходная была Таблица, то на скопированном листе будет Таблица1 и т.д. Макрос должен удалять и добавлять строки как в вашем видео как на исходном листе так и на скопированных. Проблема - обращаться при добавлении к умн. таблице на активном листе.
А как удалить дубликаты из умной таблицы средствами VBA? Записал макрос Sub Макрос6() ' ' Макрос6 Макрос ' Sheets("Архив").Select ActiveSheet.Range("Архив[#Все]").RemoveDuplicates Columns:=1, Header:=xlYes End Sub Но внутри другой, более сложной процедуры подобный код выдаёт ошибку 1004 "Application-defined or object-defined error"
Ответ нашёлся! Правильный код Sheets("Архив").Select ActiveSheet.Range("Архив").RemoveDuplicates Columns:=1, Header:=xlYes Непонятно, почему Запись Макросов записывает [#Все] и что это значит?
Здравствуйте! Почему у меня не получается? Выходит маленькое окошко и там написано: run-time error '9': Subscript out of range. Что это означает не поняла ?
эта ошибка означает, что происходит попытка вызова несуществующего какого-то элемента. Точно сказать сложно, пока не увидишь ваш код. Можете выслать файл на почту, посмотрю - info@1excel.ru
Не понятно как переименовать умную таблицу! На листе Платежи создал умную таблицу. Она сразу получила имя Таблица1 При попытке задать ей имя появился псевдоним ТабПлатежи, но Таблица1 тоже осталась. В диспетчере имён видно. что имени ТабПлатежи соответствует ДИАПАЗОН Таблица1 Пробую код: Set ShPayment = ThisWorkbook.Worksheets("Платежи") - работает Set ListObjPay = ShPayment.ListObjects("Таблица1") - работает Set ListObjPay = ShPayment.ListObjects("ТабПлатежи") - НЕ РАБОТАЕТ!
Спасибо, уже сам разобрался. Сначала переименовал таблицу через "Диспетчер имён" на вкладке "Формулы". Потом еще раз всмотрелся в ролик, и понял свою ошибку. Я пытался переименовать умную таблицу через обычное поле для задания имён ячеек и диапазонов на вкладке "Главная". В результате получил объект типа Имя Диапазона, а не объект Имя Таблицы. У них в "Диспетчере имён" значки разные. А надо использовать на вкладке "Работа с таблицами/Конструктор" поле Имя таблицы. Таким образом имя существующей таблицы легко меняется 8-)
для экселя поле клеток, которое Вы видите - это просто поле клеток. Он не понимает, где началась таблица, где закончилась. Даже если Вы отформатировали всё границами и прочим. А умная таблица - это уже отдельный кусок на клеточном поле, про который Эксель точно в курсе, что это что-то единое. К умной таблице можно удобнее обращаться в формулах, например. В формуле будут уже не просто адреса ячеек, а название таблицы и столбца. Визуально это сильно упрощает чтение формул. Также Эксель понимает, что если в таблице добавилась строка - то нужно применить все формулы и форматирования как у верхней строки. Скорее всего - Вы мало работаете в Экселе, поэтому разница для Вас не так очевидна. С опытом поймёте
а не проще удалить вручную все и ничего не писать. До сих пор не могу понять зачем ВБА. Что в нем такого суперового? По мне так сложно все, писать на английском кучу строк что бы удалить строку. Обьясните мне тупому, зачем ВБА. Сколько не искал ответа нету(
пока таблиц мало - можно и ручками. Но если надо ежедневно как-то с ними работать (составлять единый отчёт по нескольким таблицам, например) то сильно проще один раз написать алгоритм, отладить его и дальше не париться.
Автору - огромное спасибо! И за "5 Интересных трюков" - в частности
Огромное спасибо Вам за материал! Успехов
Спасибо БОЛЬШОЕ Вам за Ваш труд!!! Сто тысяч лайков!!!
Хорошие информативные видео! Спасибо. Интересная тема: слияние умной таблицы с документами Word с помощью vba!
Спасибо. Отличный урок, всё предельно понятно.
Автору спасибо, отличный урок!
Подробно и доступно
Спасибо большое за такое подробное объяснение, очень было полезно, объясняешь очень доступно и интересно. Прими мои благодарности, лайк и подписку)
Большое спасибо за видеоурок
Спасибо за урок. Очень жду продолжения.
Замечена одна неточность: при форматировании всех колонок считаешь количество строк, а форматируешь колонки. Насколько понимаю, правильным было бы записать ListObj.ListColumns.Count
Да, спасибо, что указали на ошибку. Конечно надо было записать вместо ListRows - ListColumns
Автор не заметил ошибки, ибо, по случайности, у него оказалась (почти) квадратная таблица))) А я -то думаю, почему у меня выскакивает out of range
Супер, годная инфа!
Всё чётко, по делу. Спасибо. Немного не понял, зачем финт с циклом, можно же так ListObj.Range.ColumnWidth = 10
Подписка однозначно!
Супер всё понятно.
Парни, можете написать функцию для подсчёта слова "собственно" в этом ролике? )). (Собственно, Автору лайк, однозначно)
Если бы я мог, то насыпал бы тысячу лайков. Спасибо!
Большое спасибо за урок! Очень ценно. А можно ли удалить сразу несколько смежных строк, указав диапазон? Или только по одной?
Зачем добавлять строку в вба когда она и так автоматом добавляется? Тоже и со столбцом
Самое нужное пропустил ))) Выделить группу ячеек в столбце!
В видео допущен ошибка на 22:55 при установке ширины колонок. Количество столбцов нужно определять ListObj.ListColumns.Count, а не через свойство ListRows
Лол ... тоже заметил. Думал что он нарочно сделал чтобы кол колонок и строк были одинаковые
И в результате последняя колонка не меняла размер 23:55
Извините, такой вопрос. В примере, когда делали ширину колонок 20. В первой строке цикла написали For i=1 to ListObjRows.Count Вопрос: Разве строки надо тут считать? Если мы колонки переделываем, то по логике надо колонки подсчитать и потом по количеству колонок прогнать цикл. А если у вас все правильно, поясните пожалуйста этот момент. Спасибо.
Супер
Здравствуйте я заметил что у вас цвет рамки выделяемой ячейки зелёный, как можно это сделать подскажите пожалуйста, спасибо
Спасибо за Вашу работу, очень полезно, подскажите как сделать чтобы номер столбца который нужно добавить ListObj.ListColumns.Add 7 вставлялся автоматически например у меня лист "товар", ячейка "А15" = значение "6"
ListObj.ListColumns.Add 7 (вместо "7" стало "6"). спасибо
Вопрос. Раз невозможно указать в одной книге два одинаковых имени умной таблицы - зачем каждый раз обращаться к ней через лист? Нет ли способа искать таблицу по имени сразу во всей книге? То есть - вместо ActiveWorkbook.Sheets("Лист1").ListObjects("Таблиццо") писать просто ActiveWorkbook.ListObjects("Таблиццо")
Спасибо за информативное и понятное видео!
Подскажите, а можно ли обратиться к столбцу не по его номеру, а по названию? Если да, то как это сделать?
Буду Вам очень благодарна, если поможете со следующей задачей: как прописать формулу в умной таблице не по индексам ячейки (А2*В2), а по названиям столбцов?
А в чем состоит задача? При использовании формул в умной таблице Названия столбцов подставляются автоматически
Easy Excel задача в том, что если добавится до запуска макроса столбец, то расчет макроса добьется, а если привязаться к названию столбца, то ничего менять не нужно
A ode moon vzyat excel material kotoroe ti rabotaesh?
Как задать имя умной таблицы не жестко. Дело в том, что лист будет копироваться. И умная таблица на скопированном листе будет иметь другое имя - автоматически добавляется числовой индекс в конце. Если сходная была Таблица, то на скопированном листе будет Таблица1 и т.д. Макрос должен удалять и добавлять строки как в вашем видео как на исходном листе так и на скопированных. Проблема - обращаться при добавлении к умн. таблице на активном листе.
А как удалить дубликаты из умной таблицы средствами VBA?
Записал макрос
Sub Макрос6()
'
' Макрос6 Макрос
'
Sheets("Архив").Select
ActiveSheet.Range("Архив[#Все]").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub
Но внутри другой, более сложной процедуры подобный код выдаёт ошибку 1004
"Application-defined or object-defined error"
Ответ нашёлся! Правильный код
Sheets("Архив").Select
ActiveSheet.Range("Архив").RemoveDuplicates Columns:=1, Header:=xlYes
Непонятно, почему Запись Макросов записывает [#Все] и что это значит?
Здравствуйте! Почему у меня не получается? Выходит маленькое окошко и там написано: run-time error '9': Subscript out of range. Что это означает не поняла ?
эта ошибка означает, что происходит попытка вызова несуществующего какого-то элемента. Точно сказать сложно, пока не увидишь ваш код. Можете выслать файл на почту, посмотрю - info@1excel.ru
Easy Excel хорошо вышлю скоро
Easy Excel я отправила на маил
А зачем при цикле for в конце писать “next 1”?
FeSto Chan next i - это добавляет единичку в переменную i для следующей итерации
Не понятно как переименовать умную таблицу!
На листе Платежи создал умную таблицу. Она сразу получила имя Таблица1
При попытке задать ей имя появился псевдоним ТабПлатежи, но Таблица1 тоже осталась.
В диспетчере имён видно. что
имени ТабПлатежи соответствует ДИАПАЗОН Таблица1
Пробую код:
Set ShPayment = ThisWorkbook.Worksheets("Платежи") - работает
Set ListObjPay = ShPayment.ListObjects("Таблица1") - работает
Set ListObjPay = ShPayment.ListObjects("ТабПлатежи") - НЕ РАБОТАЕТ!
Удалите одно имя. Диапазон таблицы должен быть задан только один раз.
Спасибо, уже сам разобрался.
Сначала переименовал таблицу через "Диспетчер имён" на вкладке "Формулы".
Потом еще раз всмотрелся в ролик, и понял свою ошибку.
Я пытался переименовать умную таблицу через обычное поле для задания имён ячеек и диапазонов на вкладке "Главная". В результате получил объект типа Имя Диапазона, а не объект Имя Таблицы. У них в "Диспетчере имён" значки разные.
А надо использовать на вкладке "Работа с таблицами/Конструктор" поле Имя таблицы.
Таким образом имя существующей таблицы легко меняется 8-)
2021
хватет уже слюной играться
Мумбур люмбур И для чего всё это.
Vba это что?
Вижуал Бэйсик. Встроенный в офисные приложения язык программирования
Простите. Я никак не пойму, зачем вообще она нужна эта умная таблица?. Вручную все как-то быстрее и проще делать..
для экселя поле клеток, которое Вы видите - это просто поле клеток. Он не понимает, где началась таблица, где закончилась. Даже если Вы отформатировали всё границами и прочим. А умная таблица - это уже отдельный кусок на клеточном поле, про который Эксель точно в курсе, что это что-то единое. К умной таблице можно удобнее обращаться в формулах, например. В формуле будут уже не просто адреса ячеек, а название таблицы и столбца. Визуально это сильно упрощает чтение формул. Также Эксель понимает, что если в таблице добавилась строка - то нужно применить все формулы и форматирования как у верхней строки.
Скорее всего - Вы мало работаете в Экселе, поэтому разница для Вас не так очевидна. С опытом поймёте
а не проще удалить вручную все и ничего не писать. До сих пор не могу понять зачем ВБА. Что в нем такого суперового? По мне так сложно все, писать на английском кучу строк что бы удалить строку. Обьясните мне тупому, зачем ВБА. Сколько не искал ответа нету(
ua-cam.com/video/3EXMQykVEA4/v-deo.html
я каждый день привожу в нормальный вид одни и те же таблицы на протяжении 6 лет. Если б руками - давно с ума сошел бы)))
пока таблиц мало - можно и ручками. Но если надо ежедневно как-то с ними работать (составлять единый отчёт по нескольким таблицам, например) то сильно проще один раз написать алгоритм, отладить его и дальше не париться.