Am văzut funcția de transpunere în foaia de lucru Excel când lipim orice tabel de date în foaia de lucru, ceea ce face transpunerea este că schimbă poziția rândurilor și coloanelor, adică rândurile devin coloane și coloanele devin rânduri într-un tabel de date, acum, deoarece este o foaie de lucru funcția în VBA o folosim cu metoda Application.worksheet în VBA.
Cum se transpune în VBA?
Comutarea rândurilor și coloanelor este una dintre tehnicile de manipulare a datelor pe care aproape toți utilizatorii o fac în Excel. Procesul de conversie a datelor orizontale în date verticale și verticale în orizontală este numit „Transpose” în Excel. Sunt sigur că trebuie să fiți familiarizat cu Transpunerea într-o foaie de lucru obișnuită. În acest articol, vă vom arăta cum să utilizați metoda de transpunere în codarea VBA.
Putem transpune în VBA folosind două metode.
- Transpuneți folosind formula TRANSPOSE.
- Transpuneți folosind metoda specială Lipire.
Când transpunem, schimbăm rândurile pe coloane și coloanele pe rânduri. De exemplu, dacă datele se află într-un tablou 4 X 3, atunci devin un tablou 3 X 4.
Să vedem câteva exemple de transpunere a coloanei în rând în VBA.
# 1 – Transpunere VBA folosind Formula TRANSPOSE
La fel cum folosim TRANSPOSE în excel în mod similar, putem folosi și formula TRANSPOSE în VBA. Nu avem o formulă TRANSPOSE în VBA, deci trebuie să o folosim în clasa Funcția Foaie de lucru.
De exemplu, uitați-vă la imaginea de date de mai jos.
Vom încerca să transpunem această serie de valori. Urmați pașii de mai jos pentru a transpune datele.
Pasul 1: Porniți subprocedura.
Cod:
Sub Transpose_Example1() End Sub
Pasul 2: În primul rând, trebuie să decidem unde vom transpune datele. În acest sens, am ales să transpun de la celula D1 la H2. Deci, introduceți codul VBA ca Interval („D1: H2”). Valoare =
Cod:
Sub Transpose_Example1() Range("D1:H2").Value = End Sub
Pasul 3: Acum, în intervalul menționat mai sus, avem nevoie de valoarea intervalului A1 până la B5. Pentru a ajunge la această clasă deschisă „Function Sheet Function” și selectați formula „Transpose”.
Pasul 4: În Arg 1, furnizați sursa de date, adică Interval („A1: D5”).
Cod:
Sub Transpose_Example1() Range("D1:H2").Value = WorksheetFunction.Transpose(Range("A1:D5")) End Sub
Ok, am terminat cu codificarea formulelor TRANSPOSE. Acum executați codul pentru a vedea rezultatul în intervalul de celule D1 până la H2.
După cum am văzut în imaginea de mai sus, a convertit intervalul de celule de la coloane în rânduri.
# 2 – Transpunere VBA folosind metoda specială Paste
De asemenea, putem transpune folosind metoda Paste Special. Luați în considerare aceleași date și pentru acest exemplu.
Primul lucru pe care trebuie să-l facem pentru a transpune este copierea datelor. Deci, scrieți codul ca Gama („A1: B5”). Copiați
Cod:
Sub Transpose_Example2() Range("A1:B5").Copy End Sub
Următorul lucru este că trebuie să decidem unde vom lipi datele. În acest caz, am ales D1 ca celulă de destinație dorită.
Cod:
Sub Transpose_Example2() Range("A1:B5").Copy Range("D1"). End Sub
Odată selectată celula de destinație dorită, trebuie să selectăm „Lipire metodă specială”.
Cu paste speciale, putem efectua toate acțiunile pe care le avem cu metode speciale de lipire obișnuite într-o foaie de lucru.
Ignorați toți parametrii și selectați ultimul parametru, adică Transpose, și faceți acest lucru ca fiind ADEVĂRAT.
Cod:
Sub Transpose_Example2() Range("A1:B5").Copy Range("D1").PasteSpecial Transpose:=True End Sub
Acest lucru va transpune, de asemenea, datele ca metoda anterioară.
Astfel, putem folosi formula TRANSPOSE sau metoda Lipire specială pentru a transpune datele pentru a comuta rândurile în coloane și coloanele în rânduri.
Lucruri de amintit
- Dacă folosim funcția de foaie de lucru TRANSPOSE, este obligatoriu să calculăm un număr de rânduri și coloane pentru a transpune datele. Dacă avem 5 rânduri și 3 coloane, atunci când transpunem, acesta devine 3 rânduri și 5 coloane.
- Dacă doriți aceeași formatare în timp ce utilizați paste special, atunci trebuie să utilizați argumentul Tip lipire ca „xlPasteFormats”.
Puteți descărca acest șablon VBA Transpose Excel de aici – Șablon Excel Transpunere VBA.
Articole recomandate
Acesta a fost un ghid pentru VBA Transpose. Aici am discutat despre cum să transpuneți coloanele la rând folosind codul VBA cu exemple și un șablon excel descărcabil. Mai jos sunt câteva articole utile legate de VBA –
- VBA IIF
- Găsiți și înlocuiți funcția în VBA
- ArrayList în VBA Excel
- Nu este egal în VBA
- 3 cursuri
- 12 proiecte practice
- 43+ ore
- Acces complet pe viață
- Certificat de finalizare
AFLAȚI MAI MULTE >>