Excel VBA: Vložení dat do tabulky (4 příklady)

  • Sdílet Toto
Hugh West

V tomto článku si ukážeme, jak. vložit data do Excel tabulka pomocí VBA kód . Pomocí vestavěných vlastností a metod aplikace Excel si můžeme usnadnit funkci přidávání nebo přepisování dat do tabulky. Ponořme se do příkladů, abychom metody spolu s kódy VBA jasně pochopili.

Stáhnout cvičebnici

Stáhněte si tento cvičební sešit a procvičujte si při čtení tohoto článku.

Vložení dat do tabulky.xlsm

4 příklady vkládání dat do tabulky pomocí VBA v aplikaci Excel

Řekněme, že máme prodejní seznam obchodu s podrobnostmi, jako je datum objednávky, název produktu, množství, jednotková cena a celková cena.

Jak vytvořit tabulku v aplikaci Excel

Na otočit . datová sada do Tabulka aplikace Excel , proveďte následující.

  • Vyberte na celý soubor dat .
  • Přejít na na Karta Insert z Pás karet aplikace Excel .
  • Klikněte na na Tabulka možnost.

  • Nakonec klikněte na Tlačítko OK v Okno Vytvořit tabulku.

  • Úspěšně jsme konvertované na datová sada do Tabulka aplikace Excel .

Pro vložení dat do tabulky aplikace Excel použijeme několik způsobů. Funkce VBA a vlastnosti v našem kód V následující části je popsáno, jak otevřít a napsat kód v editor Visual Basic.

Psaní kódu v editoru Visual Basic

Sledujte kroky na otevřít na editor Visual Basic a napište tam nějaký kód.

  • Přejděte na Vývojář na kartě Pás karet aplikace Excel .
  • Klikněte na na Možnost Visual Basic.

  • V Visual Basic pro aplikace klikněte na Vložení rozevíracího seznamu na vybrat na Nový modul

Nyní, když nový modul je otevřeno , napište tam nějaký kód a stiskněte F5 na běh.

1. Vložení dat na poslední řádek tabulky pomocí VBA v aplikaci Excel

V tomto příkladu použijeme VBA kód na přidat a nový řádek na spodní část o tabulka a pak vložit data V naší tabulce máme 4 řádky z data . Chcete-li přidat 5. , kopírovat a vložit následující kód do editoru 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 

Stiskněte klávesu F5 na spustit na kód.

My jsme vložené stránky a nový řádek z data na spodní část o stávající tabulka .

Vysvětlení kódu:

  • V našem kódu jsme použili Objekt ListObjects VBA Excelu na uchopit na tabulka se svým název Další informace, každý o ListObject objektů je tabulka na pracovní list . Chcete-li získat název tabulky, klikněte na na tabulka >> klikněte na na Karta Návrh tabulky v Pás karet aplikace Excel.

  • Pak jsme použili ListRows . Přidat metodu přidat nový řádek v tabulka . metoda bere dva argumenty : Pozice a AlwaysInsert .

Zadáním celé číslo , můžeme zadat relativní poloha o nově přidaný řádek v tabulka V tomto příkladu ponecháno prázdné . argument pozice , v důsledku čehož se nový řádek byla přidáno na spodní část o tabulka .

  • Nakonec nastavíme data v každý o buňky nově přidaný řádek V tomto případě byly údaje .Range(1) = "1/1/2022" jako OrderDate, .Range(2) = "Apple" jako Výrobek, .Range(3) = 5 jako Množství, .Range(4) = 1.77 jako Jednotková cena.

Přečtěte si více: Název tabulky aplikace Excel: vše, co potřebujete vědět

2. Spuštění kódu VBA pro vložení dat do určitého řádku tabulky v aplikaci Excel

V tomto příkladu budeme přidat řádek dat na konkrétní řádek vzhledem k tabulce pomocí stejného kódu, který jsme použili ve výše uvedeném příkladu. V tomto případě musíme pouze zadejte . Argument pozice o Metoda ListRows.Add v našem kódu. Řekněme, že chceme přidat údaje o prodeji pro Orange s podrobnostmi v řádek číslo 3 relativní na stávající tabulka . Aby k tomu došlo, kopírovat a vložit následující kód do vizuálního editoru kódu.

 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 

Spuštění kódu podle stisknutí klávesy F5 vloží . údaje o prodeji pro Orange v 3. řádek vzhledem k tabulce .

Přečtěte si více: Kód VBA aplikace Excel pro každý řádek tabulky (přidání, přepsání, odstranění atd.)

Podobná čtení

  • Součet vypočtených polí dělený počtem v tabulce Pivot
  • Jak znázornit relativní rozdělení četností v aplikaci Excel
  • [Oprava] Nelze seskupit data v tabulce Pivot: 4 možná řešení
  • Jak vypočítat procentuální rozdělení četností v aplikaci Excel (2 metody)
  • Neobnovení otočné tabulky (5 problémů & řešení)

3. Vkládání a přepisování dat do tabulky pomocí VBA v aplikaci Excel

Zde si ukážeme, jak přepsat na existující údaje v a tabulka místo toho z vkládání a nový řádek z data K tomu je třeba použít příkaz Vlastnost ListObject.ListRows aplikace Excel místo toho o Vlastnost ListRows.Add jsme použili dříve . Vlastnost ListObject.ListRows také bere číslo řádku ( Celé číslo hodnota ) jako jeho argument Řekněme, že chceme změna . jednotková cena o Orange z 2,14 na 2,35 že jsme vložené stránky v předchozí příklad . Kopírovat a vložit následující kód v editoru 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 

V našem kódu, my nastavit . argument pro Vlastnost ListObject.ListRows jako 3 kde je data pro Orange patří do . . kód stisknutím F5 a podívejte se na rozdíl .

Kód má změněno pouze jednotková cena o data na adrese řádek číslo 3 relativní na tabulka .

Přečtěte si více: Jak vložit nebo odstranit řádky a sloupce z tabulky aplikace Excel

4. Spuštění kódu VBA pro vložení dat do tabulky aplikace Excel na základě uživatelského vstupu

V tomto příkladu budeme vložit . název tabulky a podrobnosti o prodeji o produkt jako uživatelský vstup spíše než pevný kód v Kód VBA pokaždé . Postupujte podle níže uvedených pokynů.

  • Kopírovat a vložit následující kód do vizuálního editoru kódu.
 Sub InsertDataIntoTable() Dim tableName As ListObject Dim A, B, C, D, tName As String tName = Application.InputBox(Prompt:="Název tabulky: ", Type:=2) A = Application.InputBox(Prompt:="Datum objednávky: ", Type:=2) B = Application.InputBox(Prompt:="Název produktu: ", Type:=2) C = Application.InputBox(Prompt:="Množství: ", Type:=2) D = Application.InputBox(Prompt:="Jednotková cena: ",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 

  • Tisk F5 na spustit kód.
  • Vložte . název o tabulka v vstupní pole ( Tabulka1 , v tomto příkladu) a stiskněte DOBŘE.

  • Pak vložte hodnoty pro Datum objednávky, název produktu, množství, a Jednotková cena v vstupní pole že se objevovaly postupně V tomto příkladu jsme použili tyto hodnoty. 1/1/2022, Orange, 3, a 35.

  • Výsledkem je, že máme nový řádek s vložená data na spodní část o tabulka .

Přečtěte si více: Tipy pro formátování tabulek aplikace Excel - změna vzhledu tabulky

Poznámky

Když jsme přidáno a nový řádek s data pomocí kódu VBA. formát a vzorce získejte přenášeno na nový řádek automaticky V našem příkladu je Celková cena sloupec výstupy na produkt sloupců Množství a Jednotková cena ... Jen jsme... pouze vložené . Množství a Hodnoty jednotkových cen ; nový řádek byl vložené stránky s produkt těchto dvě hodnoty v Sloupec Celková cena.

Závěr

Nyní již víme, jak vkládat data do tabulky Excelu pomocí kódu VBA. Doufejme, že vám to pomůže tyto metody používat s větší jistotou. Jakékoli dotazy nebo připomínky nezapomeňte uvést v komentáři níže.

Hugh West je velmi zkušený školitel a analytik Excelu s více než 10 lety zkušeností v oboru. Má bakalářský titul v oboru Účetnictví a finance a magisterský titul v oboru Business Administration. Hugh má vášeň pro výuku a vyvinul jedinečný přístup k výuce, který lze snadno sledovat a pochopit. Jeho odborné znalosti Excelu pomohly tisícům studentů a profesionálů po celém světě zlepšit své dovednosti a vyniknout ve své kariéře. Prostřednictvím svého blogu Hugh sdílí své znalosti se světem a nabízí bezplatné výukové programy Excelu a online školení, které jednotlivcům a firmám pomohou dosáhnout jejich plného potenciálu.