VBA Transpose (askel askeleelta) | Suosituimmat 2 menetelmää VBA: n siirtämiseen

Olemme nähneet transponointitoiminnon excel-laskentataulukossa, kun liitämme minkä tahansa tietotaulukon taulukkoon, mitä transponoi, on se, että se muuttaa rivien ja sarakkeiden sijaintia, ts. Riveistä tulee sarakkeita ja sarakkeista rivejä tietotaulukossa, koska se on laskentataulukko VBA: ssa käytämme sitä VBA: n Application.worksheet-menetelmällä.

Kuinka siirtää VBA: ksi?

Rivien ja sarakkeiden vaihtaminen on yksi datankäsittelytekniikoista, joita lähes kaikki käyttäjät tekevät Excelissä. Prosessi, joka muuntaa vaakasuorat tiedot pystysuoriksi ja pystysuoriksi tiedoiksi vaakasuoriksi, kutsutaan Excelissä ”Transpose”. Olen varma, että sinun on tunnettava siirtäminen tavallisessa laskentataulukossa, tässä artikkelissa näytämme sinulle, miten transponointimenetelmää käytetään VBA-koodauksessa.

VBA voidaan siirtää kahteen tapaan.

  1. Transponoi TRANSPOSE-kaavan avulla.
  2. Siirtää käyttämällä Liitä erityismenetelmää.

Kun siirrämme lainsäädäntöä, vaihdamme rivejä sarakkeisiin ja sarakkeita riveihin. Esimerkiksi, jos data on 4 X 3 -ryhmässä, siitä tulee 3 X 4-taulukko.

Katsotaanpa joitain esimerkkejä sarakkeen siirtämiseksi riville VBA: ssa.

# 1 - VBA Transponoi käyttämällä TRANSPOSE-kaavaa

Kuten TRANSPOSEn käyttämisessä excelissä, voimme käyttää TRANSPOSE-kaavaa myös VBA: ssa. Meillä ei ole TRANSPOSE-kaavaa VBA: ssa, joten meidän on käytettävä sitä laskentataulukon toimintoluokassa.

Katso esimerkki alla olevasta datakuvasta.

Yritämme siirtää tämän arvoryhmän osaksi kansallista lainsäädäntöä. Noudata seuraavia vaiheita tietojen siirtämiseksi.

Vaihe 1: Aloita alimenettely

Koodi:

 Sub Transpose_Example1 () End Sub 

Vaihe 2: Ensin on päätettävä, mihin tiedot siirretään. Tässä olen valinnut siirtämisen solusta D1 H2: een. Syötä siis VBA-koodi alueeksi (“D1: H2”). Arvo =

Koodi:

 Sub Transpose_Example1 () -alue ("D1: H2"). Arvo = End Sub 

Vaihe 3: Tarvitsemme nyt edellä mainitulla alueella arvon A1 - B5 arvon. Päästäksesi tähän avoimeen ”laskentataulukon funktioluokkaan” ja valitse kaava ”Transpose”.

Vaihe 4: In Arg 1 tarjonnan tietolähteen range eli alueella ( ”A1: D5”) .

Koodi:

 Sub Transpose_Example1 () Range ("D1: H2"). Arvo = WorksheetFunction.Transpose (Range ("A1: D5")) End Sub 

Ok, olemme tehneet TRANSPOSE-kaavan koodauksen. Suorita nyt koodi nähdäksesi tulos soluista D1 - H2.

Kuten olemme nähneet yllä olevan kuvan, se on muuttanut solualueen sarakkeista riveihin.

# 2 - VBA Transpose käyttäen Liitä erityistä menetelmää

Voimme siirtää ne myös Paste Special -menetelmällä. Harkitse samoja tietoja myös tässä esimerkissä.

Ensimmäinen asia, joka meidän on tehtävä osaksi kansallista lainsäädäntöä, on kopioida tiedot. Kirjoita koodi kenttään Range (“A1: B5”). Kopioi

Koodi:

 Sub Transpose_Example2 () -alue ("A1: B5"). Kopioi End Sub 

Seuraava asia on, että meidän on päätettävä, minne aiomme liittää tiedot. Tässä tapauksessa olen valinnut D1 halutuksi kohdesoluksi.

Koodi:

Sub Transpose_Example2 () -alue ("A1: B5"). Kopioi alue ("D1"). End Sub

Kun haluttu kohdesolu on valittu, meidän on valittava "Liitä erityinen menetelmä".

Liitä erityinen -toiminnolla voimme suorittaa kaikki toiminnot, jotka meillä on tavallisilla erikoismenetelmillä taulukkoon.

Ohita kaikki parametrit ja valitse viimeinen parametri eli Transpose ja tee siitä TOSI.

Koodi:

 Sub Transpose_Example2 () -alue ("A1: B5"). Kopiointialue ("D1"). PasteSpecial Transpose: = True End Sub 

Tämä siirtää tiedot myös edellisen menetelmän tapaan.

Tällä tavoin voimme käyttää TRANSPOSE-kaavaa tai Liitä erityistä -menetelmää tietojen siirtämiseksi rivien vaihtamiseksi sarakkeiksi ja sarakkeiden riviksi.

Muistettavaa

  • Jos käytämme TRANSPOSE-laskentataulukko-toimintoa, tietojen siirtäminen on pakollista laskemalla useita rivejä ja sarakkeita. Jos meillä on 5 riviä ja 3 saraketta, transponoinnin aikana siitä tulee 3 riviä ja 5 saraketta.
  • Jos haluat saman muotoilun käyttäessäsi erityistä liittämistä, sinun on käytettävä Liitä tyyppi -argumenttia nimellä "xlPasteFormats"

Voit ladata tämän VBA Transpose Excel -mallin täältä - VBA Transpose Excel Template