Excel VBA pentru a crea un tabel din interval (6 exemple)

  • Imparte Asta
Hugh West

În timp ce lucrați cu Microsoft Excel , putem utiliza examinarea unor cantități mari de date. Și, transformarea acestor intervale de date într-un tabel este una dintre cele mai bune opțiuni. Tabelele Excel ne permit să sortăm și să filtrăm rapid datele, să adăugăm noi înregistrări și să actualizăm instantaneu diagramele și tabelele pivot. Și Excel VBA ajută utilizatorul să personalizeze aplicația cu doar câteva coduri simple. În acest articol, vom vedea câteva exemple de Excel VBA pentru a crea un tabel din interval.

Descărcați caietul de practică

Puteți descărca caietul de lucru și exersa cu ele.

Creați tabelul din Range.xlsm

6 Exemple de Excel VBA pentru a crea un tabel din gamă

Tabelele au început ca liste în ediția de meniu a Excel, dar acestea au crescut în funcționalitate în variantele de panglică. Conversia unui interval de date într-un tabel extinde capacitatea, permițându-vă să lucrați mai rapid și mai ușor. Pentru a convertiți intervalul într-un tabel folosind VBA este cel mai simplu mod de a utiliza panglica.

Să presupunem că avem un set de date simplu care conține câteva elemente în coloana B , cantitatea acestor articole din coloana C și vânzările totale pentru fiecare articol în coloana D Acum, dorim să convertim intervalul de date într-un tabel. Să demonstrăm diferite exemple și instrucțiuni pas cu pas pentru a crea un tabel din intervalul de date B4:D9 cu Excel VBA.

Utilizați ListObjects.Add pentru a transforma un interval într-un tabel Excel. Obiectul Spreadsheet are o caracteristică ListObjects . ListObjects are o tehnică numită Adăugați Criteriile pentru .Adaugă sunt următoarele.

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

Și, utilizați SourceType xlSrcRange .

1. Excel VBA pentru a genera tabelul din intervalul de valori

Cu Excel VBA , utilizatorii pot folosi cu ușurință codul care acționează ca meniurile Excel din panglică. Pentru a folosi codul VBA pentru a genera un tabel din interval, să urmăm procedura.

ETAPE:

  • În primul rând, mergeți la Dezvoltator din panglica de pe panglică.
  • În al doilea rând, din Cod categoria, faceți clic pe Visual Basic pentru a deschide fereastra Editor Visual Basic . sau apăsați Alt + F11 pentru a deschide fereastra Editor Visual Basic .
  • În loc să faceți acest lucru, puteți face clic dreapta pe foaia de lucru și mergeți la Vezi codul Acest lucru vă va duce, de asemenea, la Editor Visual Basic .

  • Aceasta va apărea în Editor Visual Basic în care ne scriem codurile pentru a crea un tabel din interval.
  • În al treilea rând, faceți clic pe Modul de la Introduceți bara de meniu derulantă.

  • Acest lucru va crea un Modul în registrul de lucru.
  • Și, copiați și lipiți VBA codul prezentat mai jos.

Cod VBA:

 Sub Create_Table() Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" End Sub 
  • După aceea, rulați codul făcând clic pe butonul RubSub sau apăsând comanda rapidă de la tastatură F5 .

Nu este nevoie să modificați codul. Tot ce puteți face este să modificați intervalul în funcție de cerințele dumneavoastră.

  • Și, în cele din urmă, urmând pașii, se va crea un tabel din intervalul B4:D9 .

Explicația codului VBA

 Sub Create_Table() 

Sub este o parte a codului care este utilizată pentru a gestiona activitatea din cod, dar care nu va returna nicio valoare. Este cunoscută și sub denumirea de subprocedură. Așadar, numim procedura noastră Create_Table() .

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

Aceasta este principala linie de cod cu ajutorul căreia intervalul este convertit într-un tabel. După cum știm deja că ListObjects.Add pentru a transforma un interval într-un tabel Excel. Și folosim xlSrcRange ca tip de sursă. De asemenea, declarăm intervalul nostru Gama("B4:D9") Și în cele din urmă, numiți tabelul nostru ca Tabelul1 .

 End Sub 

Astfel se va încheia procedura.

Citește mai mult: Cum să actualizați intervalul tabelului pivot (5 metode adecvate)

2. Construiți tabelul din interval folosind Excel VBA

Să vedem un alt exemplu de construire a unui tabel din interval folosind Excel VBA.

ETAPE:

  • În primul rând, mergeți la Dezvoltarea r din panglică.
  • În al doilea rând, faceți clic pe Visual Basic pentru a deschide fereastra Editor Visual Basic .
  • O altă modalitate de a deschide Editor Visual Basic este pur și simplu să apăsați Alt + F11 .
  • Sau, faceți clic dreapta pe foaie, apoi selectați Vezi codul .
  • Apoi, mergeți la Introduceți și selectați Modul din meniul derulant.
  • Astfel, se va deschide fereastra Visual Basic.
  • După aceea, copiați și lipiți fișierul Cod VBA mai jos.

Cod 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 
  • În continuare, apăsați butonul Tasta F5 sau faceți clic pe butonul Run Sub pentru a rula codul.

  • Și, veți obține rezultatul arătat în Metoda 1 .

Explicația codului VBA

 Dim tb2 As Range Dim wsht As Worksheet 

The DIM declarație în VBA se referă la " declara, " și trebuie folosit pentru a declara o variabilă. Deci, declarăm intervalul nostru la tb2 și foaia de lucru la ws .

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

VBA Set ne permite pur și simplu să evităm să tastăm din nou și din nou intervalul pe care trebuie să îl alegem atunci când executăm codul. Așadar, setăm intervalul nostru la regiunea curentă și foaia de lucru la foaia de lucru activă.

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

Cu această linie de cod, creăm tabelul din intervalul de valori și denumim tabelul nostru Tabelul2 .

Citește mai mult: Cum să utilizați un tabel Excel cu VBA (9 moduri posibile)

3. Creați tabelul din interval cu VBA în Excel cu ajutorul VBA

Să ne uităm la un alt exemplu de utilizare a Excel VBA pentru a crea un tabel dintr-un interval.

ETAPE:

  • Pentru a începe, selectați întregul interval pe care doriți să îl transformați într-un tabel.
  • În al doilea rând, faceți clic pe butonul Dezvoltator de pe panglică.
  • În al treilea rând, lansați Editor Visual Basic făcând clic pe Visual Basic .
  • Alternativ, puteți accesa pagina Editor Visual Basic prin apăsarea Alt + F11 .
  • Sau, faceți clic dreapta pe pe foaie și alegeți Vezi codul din meniu.
  • În continuare, alegeți Modul din caseta derulantă de sub Introduceți .
  • Și va apărea fereastra Visual Basic.
  • Scrieți codul acolo.

Cod 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 
  • În cele din urmă, apăsați butonul Tasta F5 pentru a rula codul.

  • Și, acest lucru va crea un tabel din intervalul de date pe care l-am obținut în Metoda 1 .

Citește mai mult: Cum se face un tabel în Excel (cu personalizare)

Lecturi similare

  • Suma câmpului calculat împărțită la număr în tabelul pivotant
  • Cum se ilustrează distribuția de frecvență relativă în Excel
  • Excel Pivot Table Gruparea tabelului în funcție de săptămână (3 exemple adecvate)
  • [Fix] Nu se pot grupa datele în tabelul pivot: 4 soluții posibile
  • Cum se face un tabel de amortizare în Excel (4 metode)

4. Aplicați VBA pentru a crea un tabel dinamic din gamă

Să aruncăm o privire la o altă modalitate de a genera un tabel dintr-un interval folosind Excel VBA.

ETAPE:

  • Pentru a începe, deschideți panglica și selectați butonul Dezvoltator opțiune.
  • Apoi, pentru a accesa Editor Visual Basic , faceți clic pe Visual Basic .
  • Apăsarea Alt + F11 va afișa, de asemenea, aplicația Editor Visual Basic .
  • Alternativ, faceți clic dreapta pe foaia și alegeți Vezi codul din meniul care apare.
  • Acum, de la Introduceți opțiunea derulantă, alegeți Modul .
  • Apoi copiați și lipiți fișierul VBA codul care urmează.

Cod 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 End EndSub 
  • Executați codul apăsând tasta F5 cheie.

  • Așa cum este ilustrat în Metoda 1 's illustration, masa va fi construită din gamă.

Explicația codului VBA

 Sub Create_Dynamic_Table1() 

Această linie indică numele subprocedurii.

 Dim tbOb As ListObject Dim TblRng As Range 

Această linie de două rânduri este utilizată pentru declararea variabilelor.

 Cu Foi("Exemplul4") 

The Cu declarație vă permite să efectuați o secvență de declarații asupra unui singur obiect fără a fi nevoie să recalificați numele obiectului. Astfel, vom include Cu declarație cu numele foii.

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

Acestea sunt pentru a găsi ultimul rând și, respectiv, ultima coloană.

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

Range pentru a crea tabelul.

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

Creați un tabel în intervalul specificat mai sus.

 tbOb.Name = "DynamicTable1" 

Specificarea numelui tabelului

 tbOb.TableStyle = "TableStyleMedium14" 

Specificați stilul tabelului.

Citește mai mult: Crearea tabelului în Excel utilizând comanda rapidă (8 metode)

5. Faceți un tabel dinamic din intervalul de măsură

Acum, aruncați o privire la o altă metodă Excel VBA pentru a crea un tabel dintr-un interval.

ETAPE:

  • Pentru a începe, deschideți panglica și alegeți Dezvoltator din meniul derulant.
  • Apoi selectați Visual Basic pentru a deschide fereastra Editor Visual Basic .
  • The Editor Visual Basic poate fi accesat și prin apăsarea tastelor Alt + F11 .
  • Alternativ, puteți faceți clic dreapta pe foaia și selectați Vezi codul din meniul contextual.
  • După aceea, selectați Modul de la Introduceți meniul derulant.
  • Apoi, copiați și lipiți următorul cod VBA.

Cod 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 
  • În cele din urmă, rulați codul apăsând F5 pe tastatură și veți vedea rezultatul în foaia de calcul.

  • Și, așa cum s-a demonstrat în Metoda 1 's illustration, tabelul va fi construit din intervalul.

Citește mai mult: Cum să faci ca tabelele Excel să arate bine (8 sfaturi eficiente)

6. Utilizați Excel VBA pentru a construi un tabel dinamic

Să explorăm o altă modalitate Excel VBA de a construi un tabel dintr-un interval.

ETAPE:

  • La început, mergeți la Dezvoltator tab> Visual Basic > Introduceți > Modul .
  • Sau, făcând clic dreapta pe pe foaia de lucru se va deschide o fereastră. De acolo, mergeți la Vezi codul .
  • Și, acest lucru vă va duce la Editor Visual Basic în care putem scrie macro-uri VBA.
  • Pe de altă parte, apăsarea Alt + F11 va deschide, de asemenea, fereastra Editor Visual Basic .
  • După aceea, tastați VBA cod.

Cod 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 
  • Și, rulați codul pentru a vedea rezultatul, apăsând butonul Tasta F5 .

  • Și, tabelul va fi creat din interval, așa cum se arată în imaginea de mai jos Metoda 1 .

Citește mai mult: Cum să creați un tabel în Excel cu date (5 moduri)

Concluzie

Metodele de mai sus vă vor ajuta să creați un tabel din interval în Excel. Sperăm că acest lucru vă va fi de ajutor! Dacă aveți întrebări, sugestii sau feedback, vă rugăm să ne anunțați în secțiunea de comentarii. Sau puteți arunca o privire la celelalte articole ale noastre din categoria ExcelWIKI.com blog!

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.