Оглавление
Во время работы с Microsoft Excel И преобразование этих диапазонов данных в таблицу - одна из самых лучших возможностей. Таблицы Excel позволяют нам быстро сортировать и фильтровать данные, добавлять новые записи, мгновенно обновлять диаграммы и PivotTables. И Excel VBA помогает пользователю настраивать приложение с помощью простых кодов. В этой статье мы рассмотрим некоторые примеры Excel VBA для создания таблицы из диапазона.
Скачать Практическое пособие
Вы можете скачать рабочую тетрадь и потренироваться с ними.
Создание таблицы из диапазона.xlsm6 примеров Excel VBA для создания таблицы из диапазона
Таблицы начинались как списки в версии меню Excel, но их функциональность выросла в ленточных вариантах. Преобразование диапазона данных в таблицу расширяет возможности, позволяя работать быстрее и проще. преобразовать диапазон в таблицу используя VBA это самый простой способ, чем использование ленты.
Предположим, у нас есть простой набор данных, который содержит несколько элементов в столбце B количество этих товаров в колонке C , и общий объем продаж по каждому товару в столбце D Теперь мы хотим преобразовать диапазон данных в таблицу. Давайте продемонстрируем различные примеры и пошаговые инструкции по созданию таблицы из диапазона. B4:D9 с помощью Excel VBA.
Используйте ListObjects.Add чтобы превратить диапазон в таблицу Excel. Объект Spreadsheet имеет характеристику ListObjects . ListObjects есть техника, которая называется Добавить . Критерии для .Добавить следующие.
выражение .Add(SourceType, Source, LinkSource, HasHeaders, Destination)
И, используйте SourceType xlSrcRange .
1. Excel VBA для создания таблицы из диапазона
С Excel VBA Пользователи могут легко использовать код, который действует как меню excel с ленты. Чтобы использовать VBA код для генерации таблицы из диапазона, давайте выполним процедуру ниже.
ШАГИ:
- Во-первых, зайдите в Разработчик на вкладке ленты.
- Во-вторых, из Код категорию, нажмите на Visual Basic чтобы открыть Редактор Visual Basic Или нажмите Alt + F11 чтобы открыть Редактор Visual Basic .
- Вместо этого вы можете просто щелкнуть правой кнопкой мыши на своем рабочем листе и перейти к пункту Посмотреть код Это также приведет вас к Редактор Visual Basic .
- Это появится в Редактор Visual Basic где мы напишем наши коды для создания таблицы из диапазона.
- В-третьих, нажмите на Модуль из Вставка выпадающая строка меню.
- Это позволит создать Модуль в вашей рабочей тетради.
- И, скопируйте и вставьте VBA код, показанный ниже.
Код VBA:
Sub Create_Table() Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" End Sub
- После этого запустите код, нажав на кнопку RubSub или нажав комбинацию клавиш F5 .
Вам не нужно менять код. Все, что вы можете сделать, это просто изменить диапазон в соответствии с вашими требованиями.
- И, наконец, следующие шаги позволят создать таблицу из диапазона B4:D9 .
Объяснение кода VBA
Sub Create_Table()
Sub это часть кода, которая используется для обработки работы в коде, но не возвращает никакого значения. Она также известна как подпроцедура. Поэтому мы называем нашу процедуру Create_Table() .
Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1"
Это основная строка кода, с помощью которой диапазон преобразуется в таблицу. Как мы уже знаем, что ListObjects.Add чтобы превратить диапазон в таблицу Excel. И мы используем xlSrcRange как тип источника. Кроме того, мы объявляем наш диапазон Range("B4:D9") И, наконец, назовем нашу таблицу так Таблица1 .
End Sub
На этом процедура будет завершена.
Читать далее: Как обновить диапазон таблицы Pivot (5 подходящих методов)
2. Построение таблицы из диапазона с помощью Excel VBA
Рассмотрим еще один пример построения таблицы из диапазона с помощью Excel VBA.
ШАГИ:
- Сначала зайдите в Разработайте вкладку r на ленте.
- Во-вторых, нажмите на Visual Basic чтобы открыть Редактор Visual Basic .
- Другой способ открыть Редактор Visual Basic это просто нажать Alt + F11 .
- Или щелкните правой кнопкой мыши на листе, затем выберите Посмотреть код .
- Далее, перейдите к Вставка и выберите Модуль из выпадающего меню.
- Откроется окно visual basic.
- После этого скопируйте и вставьте код VBA ниже.
Код VBA:
Sub Generate_Table() Dim tb2 As Range Dim wsht As Worksheet Set tb2 = Range("B4").CurrentRegion Set wsht = ActiveSheet ws.ListObjects.Add(SourceType:=xlSrcRange, Source:=tb2).Name = "Table2" End Sub
- Далее нажмите кнопку клавиша F5 или нажмите на Run Sub чтобы запустить код.
- И вы получите результат, показанный на рисунке Метод 1 .
Объяснение кода VBA
Dim tb2 As Range Dim wsht As Worksheet
Сайт DIM заявление в VBA относится к " заявить, " и он должен использоваться для объявления переменной. Итак, мы объявляем наш диапазон как tb2 и рабочий лист к ws .
Set tb2 = Range("B4").CurrentRegion Set wsht = ActiveSheet
VBA Set просто позволяет нам избежать необходимости вводить диапазон, который нам нужно выбрать, снова и снова при выполнении кода. Итак, мы установили наш диапазон на текущую область, а наш рабочий лист - на активный рабочий лист.
wsht.ListObjects.Add(SourceType:=xlSrcRange, Source:=tb2).Name = "Table2"
С помощью этой строки кода мы создаем таблицу из диапазона и называем нашу таблицу Таблица2 .
Читать далее: Как использовать таблицу Excel с помощью VBA (9 возможных способов)
3. Создание таблицы из диапазона с помощью VBA в Excel
Рассмотрим еще один пример использования Excel VBA для создания таблицы из диапазона.
ШАГИ:
- Для начала выделите весь диапазон, который вы хотите преобразовать в таблицу.
- Во-вторых, нажмите кнопку Разработчик на вкладке ленты.
- В-третьих, запустите Редактор Visual Basic нажав на Visual Basic .
- В качестве альтернативы вы можете обратиться к Редактор Visual Basic нажав Alt + F11 .
- Или, щелкните правой кнопкой мыши на листе и выберите Посмотреть код из меню.
- Далее выберите Модуль из выпадающего списка под Вставка .
- Появится окно visual basic.
- Напишите код там.
Код VBA:
Sub Create_Table3() Dim r As Range Dim wsht As Worksheet Dim tb3 As ListObject Set r = Selection.CurrentRegion Set wsht = ActiveSheet Set tb3 = wsht.ListObjects.Add(SourceType:=xlSrcRange, Source:=r, XlListObjecthasheaders:=x1Yes) End Sub
- Наконец, нажмите кнопку клавиша F5 чтобы запустить код.
- В результате будет создана таблица из диапазона данных, как мы получили в Метод 1 .
Читать далее: Как создать таблицу в Excel (с настройкой)
Похожие чтения
- Вычисляемая сумма поля, разделенная на количество в таблице Pivot Table
- Как проиллюстрировать относительное распределение частот в Excel
- Группировка таблиц Excel Pivot Table по неделям (3 подходящих примера)
- [Исправление] Невозможно сгруппировать даты в таблице Pivot: 4 возможных решения
- Как составить амортизационную таблицу в Excel (4 метода)
4. Применение VBA для создания динамической таблицы из диапазона
Рассмотрим еще один способ создания таблицы из диапазона с помощью Excel VBA.
ШАГИ:
- Для начала откройте ленту и выберите пункт Разработчик вариант.
- Затем, чтобы получить доступ к Редактор Visual Basic , нажмите на Visual Basic .
- Нажав на Alt + F11 также вызовет Редактор Visual Basic .
- В качестве альтернативы, щелкните правой кнопкой мыши лист и выберите Посмотреть код из появившегося меню.
- Теперь из Вставка выпадающий вариант, выберите Модуль .
- Затем скопируйте и вставьте VBA код, который следует далее.
Код VBA:
Sub Create_Dynamic_Table1() Dim tbOb As ListObject Dim TblRng As Range With Sheets("Example4") lLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row lLastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) Set tbOb = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) tbOb.Name = "DynamicTable1" tbOb.TableStyle = "TableStyleMedium14" End With EndSub
- Запустите код, нажав кнопку F5 ключ.
- Как показано в Метод 1 'иллюстрации, стол будет построен из полигона.
Объяснение кода VBA
Sub Create_Dynamic_Table1()
В этой строке указывается имя подпроцедуры.
Dim tbOb As ListObject Dim TblRng As Range
Эта двухстрочная строка используется для объявления переменных.
With Sheets("Example4")
Сайт С заявлением позволяет вам выполнять последовательность утверждений на одном объекте без необходимости переквалификации имени объекта. Итак, мы заключаем в корпус команду С заявление с именем листа.
lLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row lLastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column
Они нужны для того, чтобы найти последнюю строку и последний столбец.
Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn))
Диапазон для создания таблицы.
Set tbOb = .ListObjects.Add(xlSrcRange, TblRng, , xlYes)
Создайте таблицу в указанном выше диапазоне.
tbOb.Name = "DynamicTable1"
Указание имени таблицы
tbOb.TableStyle = "TableStyleMedium14"
Укажите стиль таблицы.
Читать далее: Создание таблицы в Excel с помощью ярлыка (8 методов)
5. Создание динамической таблицы из диапазона
Теперь рассмотрим другой метод Excel VBA для создания таблицы из диапазона.
ШАГИ:
- Для начала откройте ленту и выберите Разработчик из выпадающего меню.
- Затем выберите Visual Basic чтобы открыть Редактор Visual Basic .
- Сайт Редактор Visual Basic можно также получить, нажав кнопку Alt + F11 .
- В качестве альтернативы вы можете щелкните правой кнопкой мыши лист и выберите Посмотреть код из всплывающего меню.
- После этого выберите Модуль из Вставка выпадающее меню.
- Затем скопируйте и вставьте следующий код VBA.
Код VBA:
Sub Create_Dynamic_Table2() Dim tbObj As ListObject Dim TblRng As Range With Sheets("Example5") .Range("A1").Select Selection.CurrentRegion.Select Set tbObj = .ListObjects.Add(xlSrcRange, Selection, , xlYes) tbObj.Name = "DynamicTable2" tbObj.TableStyle = "TableStyleMedium15" End With End Sub
- Наконец, запустите код, нажав кнопку F5 на клавиатуре, и вы видите результат в своем рабочем листе.
- И, как показано в Метод 1 'иллюстрации, таблица будет построена из диапазона.
Читать далее: Как придать таблицам Excel привлекательный вид (8 эффективных советов)
6. использование Excel VBA для построения динамической таблицы
Давайте рассмотрим еще один способ Excel VBA для построения таблицы из диапазона.
ШАГИ:
- Вначале перейдите к Разработчик вкладка> Visual Basic > Вставка > Модуль .
- Или, щелкнув правой кнопкой мыши на на рабочем листе откроется окно. Оттуда перейдите к пункту Посмотреть код .
- И это приведет вас к Редактор Visual Basic поле, в котором мы можем написать макросы VBA.
- С другой стороны, нажатие кнопки Alt + F11 также откроет Редактор Visual Basic .
- После этого введите VBA код.
Код VBA:
Sub Create_Dynamic_Table3() Dim tableObj As ListObject Dim TblRng As Range With Sheets("Example6") lLastRow = .UsedRange.Rows.Count lLastColumn = .UsedRange.Columns.Count Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) Set tableObj = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) tableObj.Name = "DynamicTable3" tableObj.TableStyle = "TableStyleMedium16" End With End Sub End Sub
- И запустите код, чтобы увидеть результат, нажав кнопку клавиша F5 .
- И, таблица будет создана из диапазона, как показано на рисунке Метод 1 .
Читать далее: Как создать таблицу в Excel с данными (5 способов)
Заключение
Приведенные выше методы помогут вам создать таблицу из диапазона в Excel. Надеемся, это поможет вам! Если у вас есть вопросы, предложения или отзывы, пожалуйста, сообщите нам об этом в разделе комментариев. Вы также можете посмотреть другие наши статьи в разделе ExcelWIKI.com блог!