Excel VBA, lai izveidotu tabulu no diapazona (6 piemēri)

  • Dalīties Ar Šo
Hugh West

Strādājot ar Microsoft Excel , mēs varam izmantot, pārbaudot lielus datu apjomus. Un šo datu diapazonu pārveidošana tabulā ir viena no lieliskākajām iespējām. Excel tabulas ļauj mums ātri šķirot un filtrēt datus, pievienot jaunus ierakstus un uzreiz atjaunināt diagrammas un PivotTables. un. Excel VBA palīdz lietotājam pielāgot lietojumprogrammu, izmantojot tikai dažus vienkāršus kodus. Šajā rakstā mēs aplūkosim dažus piemērus par Excel VBA lai izveidotu tabulu no diapazona.

Lejupielādēt Practice Workbook

Varat lejupielādēt darba burtnīcu un vingrināties ar tiem.

Izveidot tabulu no Range.xlsm

6 Excel VBA piemēri, lai izveidotu tabulu no diapazona

Tabulas sākās kā saraksti Excel izvēlnes versijā, bet to funkcionalitāte pieauga lentes variantos. Datu diapazona pārveidošana par tabulu paplašina iespējas, ļaujot strādāt ātrāk un vienkāršāk. pārvērst diapazonu tabulā izmantojot VBA ir vienkāršākais veids, nekā izmantojot lenti.

Pieņemsim, ka mums ir vienkārša datu kopa, kuras kolonnā ir daži elementi. B , šo preču daudzums slejā C , un kopējais pārdošanas apjoms katrai pozīcijai ailē D . Tagad mēs vēlamies pārvērst datu diapazonu tabulā. Parādīsim dažādus piemērus un soli pa solim, kā izveidot tabulu no diapazona. B4:D9 ar Excel VBA.

Izmantojiet ListObjects.Add lai pārveidotu diapazonu par Excel tabulu. Objektam Spreadsheet ir raksturīga īpašība ListObjects . ListObjects ir metode, ko sauc par Pievienot . Kritēriji .Add ir šādi.

izteiksme .Add(SourceType, Source, LinkSource, HasHeaders,Destination)

Izmantojiet SourceType xlSrcRange .

1. Excel VBA, lai ģenerētu tabulu no diapazona

Ar Excel VBA , lietotāji var viegli izmantot kodu, kas darbojas kā Excel izvēlnes no lentes. Lai izmantotu VBA kodu, lai ģenerētu tabulu no diapazona, izpildīsim šo procedūru.

PASĀKUMI:

  • Vispirms dodieties uz Izstrādātājs cilni no lentes.
  • Otrkārt, no Kods kategorijas, noklikšķiniet uz Visual Basic lai atvērtu Visual Basic redaktors . Vai arī nospiediet Alt + F11 lai atvērtu Visual Basic redaktors .
  • Tā vietā varat vienkārši noklikšķināt ar peles labo pogu uz darblapas un doties uz Skatīt kodu . Tas jūs arī aizvedīs uz Visual Basic redaktors .

  • Tas parādīsies Visual Basic redaktors kur mēs rakstām savus kodus, lai izveidotu tabulu no diapazona.
  • Treškārt, noklikšķiniet uz Modulis no Ievietot nolaižamā izvēlnes josla.

  • Tādējādi tiks izveidots Modulis savā darbgrāmatā.
  • Un kopējiet un ielīmējiet VBA turpmāk parādītais kods.

VBA kods:

 Sub Create_Table() Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" End Sub 
  • Pēc tam palaidiet kodu, noklikšķinot uz RubSub vai nospiežot tastatūras saīsni F5 .

Jums nav jāmaina kods. Varat tikai mainīt diapazonu atbilstoši savām prasībām.

  • Un, visbeidzot, pēc šiem soļiem tiks izveidota tabula no diapazona B4:D9 .

VBA koda skaidrojums

 Apakšiedaļa Izveidot_tabulu() 

Sub ir koda daļa, kas tiek izmantota, lai apstrādātu kodu, bet neatgriež nekādu vērtību. Tā ir pazīstama arī kā apakšprocedūra. Tātad mēs nosaucam mūsu procedūru par Izveidot_tabulu() .

 Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" 

Šī ir galvenā koda rinda, ar kuru diapazons tiek pārveidots par tabulu. Kā jau mēs zinām, ka ListObjects.Add lai pārveidotu diapazonu par Excel tabulu. Un mēs izmantojam xlSrcRange kā avota tipu. Tāpat mēs deklarējam mūsu diapazonu Diapazons("B4:D9") . Un visbeidzot nosauciet mūsu tabulu kā tabula1 .

 End Sub 

Procedūra tiks pabeigta.

Lasīt vairāk: Kā atjaunināt Pivot tabulas diapazonu (5 piemērotas metodes)

2. Tabulas konstruēšana no diapazona, izmantojot Excel VBA

Aplūkosim vēl vienu piemēru, kā izveidot tabulu no diapazona, izmantojot Excel VBA.

PASĀKUMI:

  • Vispirms dodieties uz Izstrādāt r cilni no lentes.
  • Otrkārt, noklikšķiniet uz Visual Basic lai atvērtu Visual Basic redaktors .
  • Vēl viens veids, kā atvērt Visual Basic redaktors ir vienkārši nospiest Alt + F11 .
  • Vai arī noklikšķiniet uz lapas ar peles labo pogu, pēc tam atlasiet Skatīt kodu .
  • Pēc tam dodieties uz Ievietot un izvēlieties Modulis no nolaižamajā izvēlnē.
  • Tādējādi tiks atvērts Visual Basic logs.
  • Pēc tam kopējiet un ielīmējiet VBA kods zemāk.

VBA kods:

 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 
  • Tālāk nospiediet F5 taustiņš vai noklikšķiniet uz Run Sub pogu, lai palaistu kodu.

  • Un jūs saņemsiet rezultātu, kā parādīts šajā attēlā. 1. metode .

VBA koda skaidrojums

 Dim tb2 As Range Dim wsht As Worksheet 

Portāls DIM paziņojums VBA attiecas uz " paziņot, ", un tas ir jāizmanto, lai deklarētu mainīgo. Tātad, mēs deklarējam mūsu diapazonu uz tb2 un darblapas, lai ws .

 Set tb2 = Range("B4").CurrentRegion Set wsht = ActiveSheet 

VBA Set vienkārši ļauj mums izvairīties no tā, ka, palaižot kodu, mums atkal un atkal jāievada diapazons, kas mums jāizvēlas. Tātad mēs iestatām mūsu diapazonu uz pašreizējo reģionu un mūsu darblapu uz aktīvo darblapu.

 wsht.ListObjects.Add(SourceType:=xlSrcRange, Source:=tb2).Name = "Table2" 

Izmantojot šo koda rindu, mēs izveidojam tabulu no diapazona un nosaucam mūsu tabulu ar nosaukumu tabula2 .

Lasīt vairāk: Kā izmantot Excel tabulu ar VBA (9 iespējamie veidi)

3. Tabulas izveide no diapazona ar VBA programmā Excel

Aplūkosim vēl vienu piemēru, kā izmantot Excel VBA, lai izveidotu tabulu no diapazona.

PASĀKUMI:

  • Lai sāktu, atlasiet visu diapazonu, kuru vēlaties pārvērst tabulā.
  • Otrkārt, noklikšķiniet uz Izstrādātājs lentes cilne.
  • Treškārt, palaidiet Visual Basic redaktors noklikšķinot uz Visual Basic .
  • Varat arī piekļūt Visual Basic redaktors nospiežot Alt + F11 .
  • Vai, ar peles labo pogu noklikšķiniet uz uz lapas un izvēlieties Skatīt kodu no izvēlnes.
  • Pēc tam izvēlieties Modulis no nolaižamajā lodziņā zem Ievietot .
  • Parādīsies Visual Basic logs.
  • Ierakstiet kodu tur.

VBA kods:

 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 
  • Visbeidzot, nospiediet F5 taustiņš lai palaistu kodu.

  • Tas izveidos tabulu no datu diapazona, ko esam ieguvuši, izmantojot 1. metode .

Lasīt vairāk: Kā izveidot tabulu programmā Excel (ar pielāgošanu)

Līdzīgi lasījumi

  • Aprēķinātā lauka summa, dalīta ar skaitu izvades tabulā
  • Kā ilustrēt relatīvā biežuma sadalījumu programmā Excel
  • Excel izvelkamās tabulas grupēšana pēc nedēļas (3 piemēroti piemēri)
  • [Labot] Nav iespējams sagrupēt datumus izvelkamajā tabulā: 4 iespējamie risinājumi
  • Kā izveidot amortizācijas tabulu programmā Excel (4 metodes)

4. Pielietojiet VBA, lai izveidotu dinamisko tabulu no diapazona

Aplūkosim vēl vienu veidu, kā no diapazona izveidot tabulu, izmantojot Excel VBA.

PASĀKUMI:

  • Lai sāktu, atveriet lenti un atlasiet Izstrādātājs iespēja.
  • Pēc tam, lai piekļūtu Visual Basic redaktors , noklikšķiniet uz Visual Basic .
  • Spiežot Alt + F11 tiks parādīts arī Visual Basic redaktors .
  • Alternatīvi, ar peles labo pogu noklikšķiniet uz lapu un izvēlieties Skatīt kodu no parādītās izvēlnes.
  • Tagad no Ievietot nolaižamo opciju, izvēlieties Modulis .
  • Pēc tam kopējiet un ielīmējiet VBA kodu, kas seko.

VBA kods:

 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 Beidz Ar EndSub 
  • Palaidiet kodu, nospiežot F5 atslēga.

  • Kā ilustrēts 1. metode 'ilustrācijā tabula tiks veidota no diapazona.

VBA koda skaidrojums

 Apakšiedaļa Create_Dynamic_Table1() 

Šajā rindā norādīts apakšprocedūras nosaukums.

 Dim tbOb As ListObject Dim TblRng As Range 

Šo divu rindu kodu izmanto mainīgā deklarēšanai.

 Ar lapas("Piemērs4") 

Portāls Ar paziņojumu ļauj veikt virkni paziņojumu par vienu objektu, nepārkvalificējot objekta nosaukumu. Ar paziņojums ar lapas nosaukumu.

 lLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row lLastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column 

Tie ir paredzēti, lai attiecīgi atrastu pēdējo rindu un pēdējo kolonnu.

 Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) 

Diapazons, lai izveidotu tabulu.

 Set tbOb = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) 

Izveidojiet tabulu iepriekš norādītajā diapazonā.

 tbOb.Name = "DynamicTable1" 

Tabulas nosaukuma norādīšana

 tbOb.TableStyle = "TableStyleMedium14" 

Norādiet galda stilu.

Lasīt vairāk: Tabulas izveide programmā Excel, izmantojot īsceļu (8 metodes)

5. Izveidojiet dinamisko tabulu no diapazona

Tagad aplūkojiet citu Excel VBA metodi tabulas izveidei no diapazona.

PASĀKUMI:

  • Lai sāktu, atveriet lenti un izvēlieties Izstrādātājs no nolaižamajā izvēlnē.
  • Pēc tam atlasiet Visual Basic lai atvērtu Visual Basic redaktors .
  • Portāls Visual Basic redaktors var arī piekļūt, nospiežot Alt + F11 .
  • Varat arī ar peles labo pogu noklikšķiniet uz lapu un izvēlieties Skatīt kodu no uznirstošās izvēlnes.
  • Pēc tam atlasiet Modulis no Ievietot nolaižamajā izvēlnē.
  • Pēc tam kopējiet un ielīmējiet šādu VBA kodu.

VBA kods:

 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 
  • Visbeidzot palaidiet kodu, nospiežot F5 uz tastatūras, un darba lapā redzēsiet rezultātu.

  • Un, kā parādīts 1. metode 'ilustrācijā tabula tiks veidota no diapazona.

Lasīt vairāk: Kā panākt, lai Excel tabulas izskatās labi (8 efektīvi padomi)

6. Izmantojiet Excel VBA, lai izveidotu dinamisko tabulu

Izpētīsim vēl vienu Excel VBA veidu, kā izveidot tabulu no diapazona.

PASĀKUMI:

  • Sākumā dodieties uz Izstrādātājs cilne> Visual Basic > Ievietot > Modulis .
  • Vai, klikšķinot ar peles labo pogu uz darblapas tiks atvērts logs. No tā dodieties uz Skatīt kodu .
  • Un, lai nokļūtu uz Visual Basic redaktors laukā, kurā varam rakstīt VBA makroatzīmes.
  • No otras puses, nospiežot Alt + F11 tiks atvērts arī Visual Basic redaktors .
  • Pēc tam ievadiet VBA kods.

VBA kods:

 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 
  • Un palaidiet kodu, lai redzētu rezultātu, nospiežot taustiņu F5 taustiņš .

  • Un tabula tiks izveidota no diapazona, kā parādīts attēlā. 1. metode .

Lasīt vairāk: Kā Excel programmā izveidot tabulu ar datiem (5 veidi)

Secinājums

Iepriekš minētās metodes palīdzēs jums izveidot tabulu no diapazona programmā Excel. Ceru, ka tas jums palīdzēs! Ja jums ir kādi jautājumi, ieteikumi vai atsauksmes, lūdzu, dariet mums zināmu komentāru sadaļā. Vai arī varat apskatīt citus mūsu rakstus. ExcelWIKI.com blogs!

Hjū Vests ir ļoti pieredzējis Excel treneris un analītiķis ar vairāk nekā 10 gadu pieredzi šajā nozarē. Viņam ir bakalaura grāds grāmatvedībā un finansēs un maģistra grāds uzņēmējdarbības vadībā. Hjū aizraujas ar mācīšanu, un viņš ir izstrādājis unikālu mācīšanas pieeju, kas ir viegli izpildāma un saprotama. Viņa ekspertu zināšanas programmā Excel ir palīdzējušas tūkstošiem studentu un profesionāļu visā pasaulē uzlabot savas prasmes un izcelties karjerā. Izmantojot savu emuāru, Hjū dalās savās zināšanās ar pasauli, piedāvājot bezmaksas Excel apmācības un tiešsaistes apmācību, lai palīdzētu personām un uzņēmumiem pilnībā izmantot savu potenciālu.