Excel VBA: вставка даних у таблицю (4 приклади)

  • Поділитися Цим
Hugh West

У цій статті ми проілюструємо, як вставка дані в Excel таблиця використовуючи VBA код За допомогою вбудованих властивостей і методів Excel ми можемо полегшити функціональність додавання або перезапису даних в таблицю. Давайте зануримося в приклади, щоб отримати чітке уявлення про методи разом з кодами VBA.

Завантажити Практичний посібник

Завантажте цей практичний посібник, щоб потренуватися, поки ви читаєте цю статтю.

Вставка даних в таблицю Table.xlsm

4 Приклади вставки даних у таблицю за допомогою VBA в Excel

Скажімо, у нас є список продажу магазину з такими деталями, як дата замовлення, назва товару, кількість, ціна за одиницю та загальна ціна.

Як створити таблицю в Excel

До черга в "Урядовому кур'єрі". набір даних в Таблиця в Excel зробіть наступне.

  • Виберіть в "Урядовому кур'єрі". весь набір даних .
  • Іди. до Вставка вкладки від Стрічка Excel .
  • Натисніть на Таблиця варіант.

  • Нарешті, натисніть кнопку Кнопка "ОК в Вікно Створення таблиці.

  • Ми успішно перетворений в "Урядовому кур'єрі". набір даних в Таблиця в Excel .

Для вставки даних в таблицю Excel використаємо декілька Функції VBA і властивості в нашому код У наступному розділі описано, як відкритий і написання коду в візуальний базовий редактор.

Написання коду в редакторі Visual Basic

Слідкуйте за кроки до відкритий в "Урядовому кур'єрі". візуальний базовий редактор і написати там якийсь код.

  • Перейдіть на сторінку Розробник на вкладці Стрічка Excel .
  • Натисніть в "Урядовому кур'єрі". Варіант Visual Basic.

  • В рамках проекту Visual Basic для додатків у вікні, натисніть кнопку Вставити випадаючий список до вибрати в "Урядовому кур'єрі". Новий модуль

Тепер, коли новий модуль це відкритий напишіть там якийсь код і натисніть F5 до тікай.

1. Вставка даних в останній рядок таблиці за допомогою VBA в Excel

У цьому прикладі ми використаємо VBA код на додавати a новий рядок на дно про таблиця а потім вставити дані У нашій таблиці ми маємо 4 ряди з дані Доповнити 5-й , копія і паста наступний код у редакторі візуального програмування Visual Basic.

 Sub InsertDataIntoTable() Dim tableName As ListObject Set tableName = ActiveSheet.ListObjects("Table1") Dim addedRow As ListRow Set addedRow = tableName.ListRows.Add() With addedRow .Range(1) = "1/1/2022" .Range(2) = "Apple" .Range(3) = 5 .Range(4) = 1.77 End With End Sub 

Натисніть F5 до біг в "Урядовому кур'єрі". код.

У нас є вставлений a новий рядок з дані на дно про існуюча таблиця .

Пояснення коду:

  • У нашому коді ми використовували Об'єкт ListObjects з VBA Excel на захоплення в "Урядовому кур'єрі". таблиця з його ім'я Для отримання додаткової інформації, кожен про ListObject об'єктів - це таблиця на робочий аркуш Щоб отримати ім'я таблиці, клацнути на таблиця ">>; клацнути на Вкладка "Дизайн таблиці в Стрічка Excel.

  • Потім ми використовували ListRows . Метод додавання щоб додати новий рядок в таблиця Це метод дублі два аргументу : Посада і AlwaysInsert .

Ввівши ціле число ми можемо вказати взаємне розташування про новий доданий рядок в таблиця У цьому прикладі ми залишено порожнім в "Урядовому кур'єрі". аргумент позиції як наслідок, в результаті чого новий рядок був додано на дно про таблиця .

  • Нарешті, ми ввели дані в кожен про клітини з новостворених доданий рядок В даному випадку дані були .Range(1) = "1/1/2022" як OrderDate, .Range(2) = "Apple" як Product, .Range(3) = 5 як Кількість, .Range(4) = 1.77 як Ціна за одиницю.

Читати далі: Назва таблиці Excel: Все, що потрібно знати

2. Виконання коду VBA для вставки даних у певний рядок таблиці в Excel

На цій ілюстрації ми збираємося додати рядок даних на конкретний рядок відносно таблиці використовуючи той самий фрагмент коду, який ми використовували у вищенаведеному прикладі. У цьому випадку нам потрібно лише вказати в "Урядовому кур'єрі". Аргумент позиції про Метод ListRows.Add в нашому коді. Скажімо, ми хочемо додати дані про продаж для Помаранчевий з подробицями в рядок № 3 відносний до існуюча таблиця Щоб це сталося, копія і паста наступне код у візуальний редактор коду.

 Sub InsertDataIntoTable() Dim tableName As ListObject Set tableName = ActiveSheet.ListObjects("Table1") Dim addedRow As ListRow Set addedRow = tableName.ListRows.Add(3) With addedRow .Range(1) = "1/1/2022" .Range(2) = "Orange" .Range(3) = 3 .Range(4) = 2.14 End With End Sub 

Запуск коду за допомогою натискання F5 вставлено в "Урядовому кур'єрі". дані про продажі за "Помаранчеву" в 3-й рядок відносно таблиці .

Читати далі: Код Excel VBA для кожного рядка таблиці (додавання, перезапис, видалення і т.д.)

Схожі читання

  • Розрахована сума полів, поділена на кількість у зведеній таблиці
  • Як проілюструвати відносний розподіл частот в Excel
  • [Виправлено] Неможливо згрупувати дати у зведеній таблиці: 4 можливих рішення
  • Як розрахувати відсотковий розподіл частот в Excel (2 способи)
  • Зведена таблиця не освіжає (5 проблем та шляхи їх вирішення)

3. Вставка та перезапис даних у таблицю засобами VBA в Excel

Тут ми проілюструємо, як можна перезаписати в "Урядовому кур'єрі". існуючі дані в таблиця замість з вставка a новий рядок з дані Для цього нам потрібно скористатися Властивість ListObject.ListRows Excel натомість про Властивість ListRows.Add ми використовували раніше "У нас тут є Властивість ListObject.ListRows також приймає номер рядка ( Ціле число значення ) в якості свого аргумент Скажімо, ми хочемо зміна в "Урядовому кур'єрі". ціна за одиницю про Помаранчевий з 2,14 до 2,35 що ми вставлений в попередній приклад . Прийом. і паста наступний код у редакторі візуального програмування Visual Basic.

 Sub InsertDataIntoTable() Dim tableName As ListObject Set tableName = ActiveSheet.ListObjects("Table1") Dim addedRow As ListRow Set addedRow = tableName.ListRows(3) With addedRow .Range(1) = "1/1/2022" .Range(2) = "Orange" .Range(3) = 3 .Range(4) = 2.35 End With End Sub 

У нашому кодексі, ми набір в "Урядовому кур'єрі". аргумент для Властивість ListObject.ListRows як 3 де дані для Помаранчевий належить Біжи! в "Урядовому кур'єрі". код натиснувши на кнопку F5 і подивіться різниця .

Кодекс має змінений тільки в ціна за одиницю про дані на рядок № 3 відносний до таблиця .

Читати далі: Як вставити або видалити рядки та стовпці з таблиці Excel

4. Виконання коду VBA для вставки даних у таблицю Excel на основі даних, введених користувачем

У цьому прикладі ми збираємося вставка в "Урядовому кур'єрі". назва таблиці і деталі продажу про те, що продукт як введення користувачем замість того, щоб секретний код це в Код VBA кожен раз Для цього дотримуйтесь наведених нижче інструкцій.

  • Прийом. і паста у візуальний редактор коду наступний код.
 Sub InsertDataIntoTable() Dim tableName As ListObject Dim A, B, C, D, tName As String tName = Application.InputBox(Prompt:="Назва таблиці: ", Type:=2) A = Application.InputBox(Prompt:="Дата замовлення: ", Type:=2) B = Application.InputBox(Prompt:="Найменування товару: ", Type:=2) C = Application.InputBox(Prompt:="Кількість: ", Type:=2) D = Application.InputBox(Prompt:="Ціна за одиницю: ",Type:=2) Set tableName = ActiveSheet.ListObjects(tName) Dim addedRow As ListRow Set addedRow = tableName.ListRows.Add() With addedRow .Range(1) = A .Range(2) = B .Range(3) = C .Range(4) = D End With End Sub 

  • Преса F5 до біг код.
  • Поставити в "Урядовому кур'єрі". ім'я про таблиця в поле введення ( Таблиця 1 в цьому прикладі) і натиснути ГАРАЗД.

  • Потім введіть значення для Дата замовлення, назва товару, кількість, і Ціна за одиницю в поля введення що з'явилися послідовно У цьому прикладі ми використовували такі значення 1/1/2022, Помаранчева, 3, і 35.

  • В результаті маємо новий рядок з вставлені дані на дно про таблиця .

Читати далі: Поради щодо форматування таблиць Excel - зміна зовнішнього вигляду таблиці

Примітки

Коли ми додано a новий рядок з дані за допомогою коду VBA, було реалізовано формат і формули отримувати перевезений до новий рядок автоматично У нашому прикладі - це TotalPrice колонка результати в "Урядовому кур'єрі". продукт колонок Кількість і Ціна за одиницю Ми просто вставляється тільки в "Урядовому кур'єрі". Кількість і Значення ціни за одиницю продукції ; the новий рядок був вставлений з продукт з них два значення в Колонка "Загальна ціна".

Висновок

Тепер ми знаємо, як вставити дані в таблицю Excel за допомогою коду VBA. Сподіваємося, це допоможе вам більш впевнено користуватися цими методами. Якщо у вас виникнуть питання або пропозиції, не забувайте залишати їх у полі для коментарів нижче.

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.