Kuten tiedät, VBA-menetelmä suorittaa toiminnon Excel 2016:ssa. Range-objektilla on kymmeniä menetelmiä, mutta et tarvitse useimpia niistä. Täältä löydät joitain yleisimmin käytetyistä Range-objektimenetelmistä.
Valitse menetelmä
Käytä Select-menetelmää valitaksesi solualueen. Seuraava lause valitsee alueen aktiivisesta laskentataulukosta:
Alue(“A1:C12”). Valitse
Ennen alueen valitsemista on usein hyvä idea käyttää yhtä lisälauseketta varmistaaksesi, että oikea laskentataulukko on aktiivinen. Jos esimerkiksi Taulukko1 sisältää alueen, jonka haluat valita, valitse alue käyttämällä seuraavia lauseita:
Sheets("Sheet1"). Aktivoi
Alue(“A1:C12”). Valitse
Toisin kuin saatat odottaa, seuraava lauseke luo virheen, jos Sheet1 ei ole jo aktiivinen taulukko. Toisin sanoen, sinun on käytettävä kahta lausetta yhden sijaan: toista arkin aktivoimiseen ja toista alueen valitsemiseen.
Sheets("Sheet1").Alue("A1:C12").Valitse
Jos käytät Application-objektin GoTo-menetelmää alueen valitsemiseen, voit unohtaa oikean laskentataulukon valitsemisen ensin. Tämä lauseke aktivoi Sheet1:n ja valitsee sitten alueen:
Application.Goto Sheets("Sheet1").Alue("A1:C12")
GoTo-menetelmä on VBA-vastaava F5-näppäimen painaminen Excelissä, jolloin näyttöön tulee GoTo-valintaikkuna.
Kopioi ja liitä menetelmät
Voit suorittaa kopiointi- ja liittämistoimintoja VBA:ssa käyttämällä Kopioi ja Liitä -menetelmiä. Huomaa, että kaksi eri objektia tulee peliin. Kopioi-menetelmää voidaan soveltaa Range-objektiin, mutta Paste-menetelmää sovelletaan työtaulukko-objektiin. Se on itse asiassa järkevää: kopioit alueen ja liität sen laskentataulukkoon.
Tämä lyhyt makro (makrotallentimen luvalla) kopioi alueen A1:A12 ja liittää sen samaan laskentataulukkoon solusta C1 alkaen:
Sub CopyRange()
Alue ("A1:A12"). Valitse
Valinta.Kopioi
Alue ("C1"). Valitse
ActiveSheet.Paste
Lopeta ala
Huomaa, että edellisessä esimerkissä ActiveSheet-objektia käytetään Liitä-menetelmän kanssa. Tämä on erityinen versio Työtaulukko-objektista, joka viittaa tällä hetkellä aktiiviseen laskentataulukkoon. Huomaa myös, että makro valitsee alueen ennen sen kopioimista. Sinun ei kuitenkaan tarvitse valita aluetta ennen kuin teet sen kanssa jotain. Itse asiassa seuraava toimenpide suorittaa saman tehtävän kuin edellinen esimerkki käyttämällä yhtä lausetta:
Sub CopyRange2()
Alue ("A1:A12"). Kopioi alue ("C1")
Lopeta ala
Tämä menettely hyödyntää sitä tosiasiaa, että kopiomenetelmä voi käyttää argumenttia, joka vastaa kopiointitoiminnon kohdealuetta. Tämä on asia, jonka voit selvittää tarkistamalla ohjejärjestelmästä.
Selkeä menetelmä
Tyhjennä-menetelmä poistaa alueen sisällön sekä kaikki solujen muotoilut. Jos esimerkiksi haluat purkaa kaiken sarakkeessa D, seuraava lause tekee tempun:
Sarakkeet ("D:D"). Selkeä
Sinun tulisi olla tietoinen kahdesta toisiinsa liittyvästä menetelmästä. ClearContents-menetelmä poistaa alueen sisällön, mutta jättää muotoilun ennalleen. ClearFormats-menetelmä poistaa alueen muotoilun, mutta ei solun sisältöä.
Poista-menetelmä
Alueen tyhjentäminen eroaa alueen poistamisesta. Kun poistat alueen, Excel siirtää jäljellä olevia soluja ympäriinsä täyttääkseen poistamasi alueen.
Seuraava esimerkki käyttää Delete-menetelmää rivin 6 poistamiseen:
Rivit ("6:6"). Poista
Kun poistat alueen, joka ei ole täydellinen rivi tai sarake, Excelin on osattava siirtää soluja. (Jos haluat nähdä, miten tämä toimii, kokeile Excelin Koti → Solut → Poista → Poista solut -komentoa.)
Seuraava lause poistaa alueen ja täyttää sitten tuloksena olevan aukon siirtämällä muut solut vasemmalle:
Alue(“C6:C10”). Poista xlToLeft
Poista-menetelmä käyttää argumenttia, joka osoittaa, kuinka Excelin tulee siirtää jäljellä olevat solut. Tässä tapauksessa argumentille käytetään sisäänrakennettua vakiota (xlToLeft). Voit myös käyttää xlUp, toinen nimetty vakio.