VBA-luettelokohteet - Opas ListObject Excel -taulukoihin Excel VBA: ssa

Mitä ovat ListObjects VBA: ssa?

Taulukossa, jonka näemme normaalisti, on tietojoukko, mutta VBA-terminologiassa on paljon muuta, kuten koko tietoluettelon alue, sarake tunnetaan luettelosarakkeena ja rivi tunnetaan luettelorivinä ja niin edelleen , joten tämän ominaisuuden saamiseksi meillä on sisäänrakennettu toiminto, joka tunnetaan nimellä Listobjects ja jota käytetään laskentataulukko-funktion kanssa.

VBA ListObject on tapa viitata Excel-taulukoihin kirjoitettaessa VBA-koodia. Käyttämällä VBA LISTOBJECTS -ohjelmaa voimme luoda, poistaa taulukon ja voimme täysin leikkiä VBA-koodin sisältävien excel-taulukoiden kanssa. Excel-taulukot ovat hankalia, aloittelijoita, ja jopa keskitason käyttäjien on vaikea työskennellä taulukoiden kanssa. Koska tässä artikkelissa puhutaan Excel-taulukoiden viittaamisesta VBA-koodauksessa, on parempi, että sinulla on hyvät tiedot taulukoista Excelissä.

Kun tiedot muunnetaan taulukoiksi, emme enää toimi solualueiden kanssa. Meidän on pikemminkin työskenneltävä taulukkoalueiden kanssa, joten tässä artikkelissa näytämme sinulle, kuinka työskennellä Excel-taulukoiden kanssa VBA-koodien kirjoittamiseksi tehokkaasti.

Luo taulukon muoto käyttämällä Excel VBA: n ListObjects-sovellusta

Katso esimerkiksi alla olevat Excel-tiedot.

VBA ListObject -koodia käyttämällä luomme taulukkomuodon näille tiedoille.

  • Tätä tietoa varten on ensin löydettävä viimeinen käytetty rivi ja sarake, joten määritä kaksi muuttujaa tämän löytämiseksi.

Koodi:

Alaluettelo_objektit_esimerkki1 () Dim LR niin pitkä Dim LC LC Long End sub
  • Käytä viimeksi käytettyä riviä ja saraketta alla olevan koodin avulla.

Koodi:

LR = Solut (Rivit.Määrä, 1) .Loppu (xlUp) .Rivi LC = Solut (1, Sarakkeet.Määrä) .End (xlToLeft) .Sarake
  • Määritä nyt yksi muuttuja tietojen viitteen säilyttämiseksi.

Koodi:

Hämärä Rng-alue
  • Aseta nyt viittaus tähän muuttujaan alla olevan koodin avulla.

Koodi:

Aseta Rng = Solut (1, 1) .Koko (LR, LC)

Nyt meidän on käytettävä VBA "ListObject.Add" -menetelmää taulukon luomiseen, ja alla on saman syntaksit.

ListObject.Add (lähde, XlListObjectHasHeaders, Destination, TableStyleName)

Lähde: Tämä ei ole mikään solualue, johon taulukko lisätään. Joten voimme tässä antaa kaksi argumenttia, eli "xlSrcRange" ja "xlSrcExternal".

XlListObjectHasHeaders: Jos taulukkoon, joka lisää tietoja, on otsikot. Jos kyllä, voimme tarjota ”xlYes”. Jos ei, voimme antaa "xlNo".

Kohde: Tämä ei ole muuta kuin tietojemme alue.

Taulukon tyyli: Jos haluat käyttää mitä tahansa taulukon tyyliä, voimme tarjota tyylit.

  • Ok, nyt aktiivisessa taulukossa luomme taulukkoa, joten alla oleva koodi loisi taulukon meille.

Koodi:

Himmennä Ws taulukkosarjana Ws = ActiveSheet Ws.ListObjects.Add xlSrcRange, xllistobjecthasheaders: = xlYes, Destination: = Rng
  • Tämän jälkeen meidän on annettava tälle taulukolle nimi.

Koodi:

Ws.ListObjects (1). Name = "EmpTable"
  • Alla on täydellinen viitteesi koodi.

Koodi:

Alaluettelo_objektit_esimerkki1 () himmennä LR niin kauan himmeä LC niin pitkä LR = solut (rivit.luku, 1) .End (xlUp) .rivi LC = solut (1, sarakkeet.luku) .End (xlToLeft). Sarakkeen himmentimen alue alue Aseta Rng = Solut (1, 1). Muuta (LR, LC) Dim Ws -taulukkoa Aseta Ws = ActiveSheet Ws.ListObjects.Add xlSrcRange, xllistobjecthasheaders: = xlYes, Destination: = Rng Ws.ListObjects (1). Nimi = " EmpTable "End Sub

Ok, ajetaan koodi ja katsotaan taika.

Se on luonut taulukon mainituille tiedoille ja antanut taulukon nimeksi "EmpTable".

Excel-taulukoiden muotoilu VBA ListObjects -sovelluksella

Kun Excel-taulukko on luotu, voimme työskennellä taulukoiden kanssa käyttämällä VBA ListObject-kokoelmaa.

  • Määritä ensin muuttuja nimellä “ListObject”.

Koodi:

Alaluettelo_objektit_esimerkki2 () Himmennä MyTable kuin ListObject End Sub
  • Aseta nyt viittaus tähän muuttujaan taulukon nimellä.

Koodi:

Alaluettelo_objektit_esimerkki2 () Himmennä MyTable kuin ListObject Set MyTable = ActiveSheet.ListObjects ("EmpTable") End Sub

Nyt muuttuja "MyTable" sisältää viitteen taulukolle "EmpTable".

  • Syötä muuttujan nimi ja laita piste nähdäksesi VBA ListObjectin ominaisuudet ja menetelmät.

Esimerkiksi, jos haluamme valita koko taulukon, meidän on käytettävä "Range" -objektia, ja tässä on käytettävä "Select" -menetelmää.

Koodi:

MyTable.Range.Valitse

Tällöin valitaan koko tietotaulukko, otsikko mukaan lukien.

  • Jos haluat valita vain taulukon sisällön ilman otsakkeita, meidän on käytettävä ”DataBodyRange”.

Koodi:

MyTable.DataBodyRange.Select

Näin voimme leikkiä pöytiin.

  • Alla on luettelo toimintakoodeista viitteellesi.

Koodi:

Alaluettelo_objektit_esimerkki2 () Himmennä MyTable kuin ListObject Set MyTable = ActiveSheet.ListObjects ("EmpTable") MyTable.DataBodyRange.Select 'Valitse tietoväli ilman otsikoita MyTable.Range.Select' Valitse tietoalue otsikoilla MyTable.HeaderRowRange. Valitse taulukon otsikkorivit MyTable.ListColumns (2) .Range.Select 'Sarakkeen 2 valitsemiseksi, mukaan lukien otsikko MyTable.ListColumns (2) .DataBodyRange.Select' Valitse sarake 2 ilman otsikon End Sub

Näin voimme käyttää “ListObject” -kokoelmaa leikkimään excel-pöytien kanssa.

Muistettavaa

  • VBA ListObject on objektien kokoelma vertailutaulukkoihin.
  • Jotta pääsisimme ensin ListObject-kokoelmaan, meidän on määritettävä mikä laskentataulukko tarkoitamme.

Mielenkiintoisia artikkeleita...