Kazalo
V tem članku bomo prikazali, kako vstavite podatki v Excel tabela uporaba VBA koda . S pomočjo Excelovih vgrajenih lastnosti in metod lahko enostavno olajšamo funkcionalnost dodajanja ali prepisovanja podatkov v tabelo. Potopimo se v primere, da bi jasno razumeli metode skupaj s kodami VBA.
Prenesi delovni zvezek za prakso
Prenesite ta delovni zvezek za vadbo, ki ga lahko uporabljate med branjem tega članka.
Vstavljanje podatkov v tabelo.xlsm4 primeri za vstavljanje podatkov v tabelo z uporabo VBA v Excelu
Recimo, da imamo prodajni seznam trgovine s podrobnostmi, kot so datum naročila, ime izdelka, količina, cena na enoto in skupna cena.
Kako ustvariti tabelo v programu Excel
Na naslov obračanje . nabor podatkov v Excelova tabela , naredite naslednje.
- Izberite . celoten nabor podatkov .
- Go na zavihek Vstavljanje iz Excelov trak .
- Kliknite . na Tabela možnost.
- Na koncu kliknite Gumb OK v Okno Ustvari tabelo.
- Uspešno smo pretvorjeno . nabor podatkov v Excelova tabela .
Za vstavljanje podatkov v Excelovo tabelo bomo uporabili več Funkcije VBA in . lastnosti v našem koda . V naslednjem razdelku je opisano, kako odprta in . pisanje kode v urejevalnik Visual Basic.
Pisanje kode v urejevalniku Visual Basic
Sledite koraki na . odprta . urejevalnik Visual Basic in vanj napišite nekaj kode.
- Pojdite na Razvijalec v zavihku Excelov trak .
- Kliknite . . Možnost Visual Basic.
- V Visual Basic za aplikacije kliknite na okno Vstavljanje spustne vrstice na . izberite . Nov modul
Zdaj, ko je a nov modul je . odprl , napišite nekaj kode in pritisnite F5 na . teči.
1. Vstavljanje podatkov v zadnjo vrstico tabele z uporabo VBA v Excelu
V tem primeru bomo uporabili VBA kodo na dodajte a nova vrstica na dno o tabela in nato vstavljanje podatkov v to. V naši tabeli imamo 4 vrstice na spletnem mestu . podatki . Dodajanje 5. , kopiranje in . prilepite naslednjo kodo v urejevalnik 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
Pritisnite F5 na . zagnati . koda.
Mi smo vstavljen a nova vrstica na spletnem mestu podatki na dno o obstoječa tabela .
Razlaga kode:
- V naši kodi smo uporabili Objekt ListObjects VBA Excel za zgrabite . tabela s svojim ime . Za več informacij, vsak o ListObject predmetov je tabela na delovni list Če želite pridobiti ime tabele, kliknite na tabela >> kliknite na zavihek Oblikovanje mize v Excelov trak.
- Nato smo uporabili ListRows . Dodajanje metode da dodate nova vrstica v tabela . metoda . dva argumenta : Položaj in . Vedno vstavi .
Z vnosom celo število , lahko določimo relativni položaj o novo dodana vrstica v tabela V tem primeru puščeno prazno . argument za položaj , zato je nova vrstica je bil dodano na dno o tabela .
- Nazadnje nastavimo podatke v vsak o celice novega dodana vrstica V tem primeru so bili podatki .Range(1) = "1/1/2022" kot OrderDate, .Range(2) = "Apple" kot Izdelek, .Range(3) = 5 kot Količina, .Range(4) = 1,77 kot Cena na enoto.
Preberite več: Ime Excelove tabele: vse, kar morate vedeti
2. Zagon kode VBA za vstavljanje podatkov v določeno vrstico tabele v Excelu
V tem prikazu bomo dodajte vrstico podatkov na določeno vrstico glede na tabelo z uporabo iste kode, ki smo jo uporabili v zgornjem primeru. V tem primeru moramo samo navedite . . Argument za položaj o Metoda ListRows.Add v naši kodi. Recimo, da želimo dodajanje podatkov o prodaji za Oranžna s podrobnostmi v vrstica številka 3 relativno na obstoječa tabela . Da bi se to zgodilo, kopiranje in . prilepite naslednje koda v urejevalnik vizualne kode.
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
Zagon kode z s pritiskom na F5 vstavi . podatki o prodaji za oranžno barvo v 3. vrstica glede na tabelo .
Preberite več: Excelova koda VBA za vsako vrstico v tabeli (dodajanje, prepisovanje, brisanje itd.)
Podobna branja
- Izračunana vsota polj, deljena s številom v preglednici Pivot
- Kako prikazati relativno porazdelitev pogostosti v Excelu
- [popravek] Datumov ni mogoče združiti v preglednici Pivot: 4 možne rešitve
- Kako izračunati odstotno porazdelitev pogostosti v Excelu (2 metodi)
- Pivotna tabela se ne osveži (5 težav in rešitve)
3. Vstavljanje in prepisovanje podatkov v tabelo z uporabo VBA v Excelu
Tukaj bomo prikazali, kako prepišite . obstoječi podatki v tabela namesto tega na spletnem mestu vstavljanje a nova vrstica na spletnem mestu podatki Za to moramo uporabiti Lastnost ListObject.ListRows programa Excel namesto o Lastnost ListRows.Add smo uporabili prej . Lastnost ListObject.ListRows tudi številka vrstice ( Integer vrednost ) kot njegov argument Recimo, da želimo sprememba . cena na enoto o Oranžna od 2,14 do 2,35 da smo vstavljen v prejšnji primer . Kopiraj in . prilepite naslednjo kodo v urejevalniku 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ši kodi, smo nastavite . argument za Lastnost ListObject.ListRows kot 3 kjer je podatki za Oranžna pripada . . koda s pritiskom na F5 in si oglejte razlika .
Koda ima spremenjeno samo cena na enoto o podatki na spletni strani . vrstica številka 3 relativno na tabela .
Preberite več: Kako vstaviti ali izbrisati vrstice in stolpce iz tabele Excel
4. Zagon kode VBA za vstavljanje podatkov v Excelovo tabelo na podlagi uporabniškega vnosa
V tem primeru bomo vstavite . ime mize in . podrobnosti o prodaji o izdelek kot vnos uporabnika in ne trdo kodo ga v koda VBA vsakič Za to sledite spodnjim navodilom.
- Kopiraj in . prilepite naslednjo kodo v urejevalnik vizualne kode.
Sub InsertDataIntoTable() Dim tableName As ListObject Dim A, B, C, D, tName As String tName = Application.InputBox(Prompt:="Ime tabele: ", Type:=2) A = Application.InputBox(Prompt:="Datum naročila: ", Type:=2) B = Application.InputBox(Prompt:="Ime izdelka: ", Type:=2) C = Application.InputBox(Prompt:="Količina: ", Type:=2) D = Application.InputBox(Prompt:="Cena enote: ",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
- Pritisnite F5 na . zagnati kodo.
- Postavite . ime o tabela v vnosno polje ( Tabela1 v tem primeru) in pritisnite V REDU.
- Nato postavite vrednosti za Datum naročila, ime izdelka, količina, in . Cena na enoto v vnosna polja na spletni strani . se je pojavila zaporedno . V tem primeru smo uporabili naslednje vrednosti 1/1/2022, oranžna, 3, in . 35.
- Tako smo dobili nova vrstica z vstavljeni podatki na dno o tabela .
Preberite več: Nasveti za oblikovanje tabele v Excelu - spremenite videz tabele
Opombe
Ko smo Dodano a nova vrstica s spletno stranjo . podatki z uporabo kode VBA. format in formule pridobite izvedeno na nova vrstica samodejno V našem primeru je Skupna cena stolpec izhodi . izdelek stolpcev Količina in Cena na enoto . Mi samo samo vstavljeno . Količina in . Vrednosti cene na enoto ; ; nova vrstica je bil vstavljen z izdelek teh dve vrednosti v Stolpec Skupna cena.
Zaključek
Zdaj vemo, kako vstaviti podatke v Excelovo tabelo z uporabo kode VBA. Upamo, da vam bo to pomagalo pri bolj samozavestni uporabi teh metod. Morebitna vprašanja ali predloge ne pozabite vnesti v spodnje polje za komentarje.