Kuinka siirtää rivit sarakkeisiin Excelin kriteerien perusteella (2 tapaa)

  • Jaa Tämä
Hugh West

Yleisesti ottaen TRANSPOSE funktiota voidaan usein käyttää rivien muuntamiseen sarakkeiksi. Tietyistä kriteereistä, kuten yksilöllisistä arvoista, riippuvia tuloksia ei kuitenkaan palauteta. Tässä opetusohjelmassa näytämme, miten voit muuntaa siirtää rivit sarakkeisiin Excelin kriteerien perusteella.

Lataa harjoituskirja

Lataa tämä harjoituskirja, jotta voit harjoitella tätä artikkelia lukiessasi.

Rivien siirtäminen sarakkeiksi Criteria.xlsm:n avulla.

2 Käteviä lähestymistapoja rivien siirtämiseen sarakkeisiin Excelin kriteerien perusteella

Alla olevaan kuvaan on liitetty useita tuotteita ja niiden määriä sisältävä tiedosto. rivit siirretään sitten sarakkeiksi. Me tulemme... siirretään rivit sarakkeisiin kriteerien perusteella. yksilöllisistä arvoista, koska erillisessä solussa on joitakin päällekkäisiä merkintöjä. Käytämme ensin komentoa INDEX , MATCH , COUNTIF , IF ja IFERROR funktioita kaavojen luomiseksi. Suoritamme myös komennon VBA koodia saman asian saavuttamiseksi.

1. Sovelletaan kaavaa INDEX-, MATCH- ja COUNTIF-toimintojen avulla rivien siirtämiseksi sarakkeisiin Excelin kriteerien perusteella.

Alussa sovellamme kaavoja, jotka ovat seuraavat INDEX , MATCH , COUNTIF , IF ja IFERROR funktioita matriisien kanssa.

Vaihe 1: INDEX-, MATCH- ja COUNTIF-funktioiden lisääminen.

  • Solussa E5 Kirjoita seuraava kaava saadaksesi yksilölliset tuotteet.
=INDEX($B$5:$B$12, MATCH(0, COUNTIF($E$4:$E4, $B$5:$B$12), 0)))

Vaihe 2: Sovita Array

  • Jos haluat soveltaa kaavaa joukon kanssa, paina Ctrl + Vuoro + Kirjoita

  • Näin ollen saat ensimmäisen ainutlaatuisen tuloksen.

Vaihe 3: Solujen automaattinen täyttäminen

  • Jos haluat saada kaikki yksilölliset arvot, käytä AutoFill Käsityökalu täyttää sarakkeen automaattisesti.

Vaihe 4: Syötä IFERROR-funktiot.

  • Jos haluat transponoida määrien riviarvon sarakkeisiin, kirjoita seuraava kaava.
=IFERROR(INDEX($C$5:$C$12, MATCH(0, COUNTIF($E5:E5, $C$5:$C$12) + IF($B$5:$B$12$E5,1,0),0)),0),0)

Vaihe 5: Sovita Array

  • Jos haluat lisätä joukon, paina Ctrl + Vuoro + Kirjoita .

  • Tämän seurauksena solujen F5 näyttää ensimmäisen transponoidun arvon kuten alla olevassa kuvassa.

  • Vedä alaspäin AutoFill-kahvan työkalu täyttääksesi sarakkeen automaattisesti.

  • Lopuksi rivit täytetään automaattisesti riveillä, joissa on AutoFill-kahvan työkalu .
  • Näin ollen kaikki siirretyt rivit muuttuvat sarakkeiksi kuten alla olevassa kuvassa.

Lue lisää: Useiden rivien siirtäminen ryhmässä sarakkeisiin Excelissä

Samanlaisia lukemia

  • Kuinka siirtää päällekkäiset rivit sarakkeisiin Excelissä (4 tapaa)
  • Excel VBA: Useiden rivien siirtäminen ryhmässä sarakkeisiin
  • Useiden sarakkeiden siirtäminen yhdeksi sarakkeeksi Excelissä (3 kätevää menetelmää)
  • Kuinka kääntää Excelin käänteinen transponointi (3 yksinkertaista menetelmää)

2. Suorita VBA-koodi rivien siirtämiseksi sarakkeisiin Excelin kriteerien perusteella.

Vaihe 1: Luo moduuli

  • Paina ensin Alt + F11 aloittaa VBA-makro .
  • Klikkaa Lisää .
  • Luoda Moduuli , valitse Moduuli vaihtoehto.

Vaihe 2: Kirjoita VBA-koodit

  • Liitä seuraava VBA
 Sub TransposeRows() 'Määritä muuttujat Dim RowsNumber As Long Dim p As Long Dim xColCr As String Dim xColumn As New Collection Dim InputRng As Range Dim OutputRng As Range Dim RngText As String Dim CountRow As Long Dim xRowRg As Range On Error Resume Next 'Aseta arvot ja syöttölaatikko fot Tuloalue RngText = ActiveWindow.RangeSelection.Address Set InputRng = Application.InputBox("Valitse syöttösi").Range for 2 columns:", "ExcelWIKI", RngText, , , , , , 8) Set InputRng = Application.Intersect(InputRng, InputRng.Worksheet.UsedRange) 'Sovelletaan ehtoa, jotta voidaan laskea vain 2 saraketta ja näyttää msg-ruutu, joka varoittaa valitsemaan vain kaksi saraketta If InputRng Is Nothing Then Exit Sub If (InputRng.Columns.Count 2) Or _ (InputRng.Areas.Count> 1) Then MsgBox "Määritelty alue on vain 2 sarakkeen alue",, "ExcelWIKI" Exit Sub End If 'Aseta arvot ja Input Box fot Input Range Set OutputRng = Application.InputBox("Select Your Output Range (one cell):", "ExcelWIKI", RngText, , , , , , 8) If OutputRng Is Nothing Then Exit Sub Set OutputRng = OutputRng.Range(1) 'Count Rows RowsNumber = InputRng.Rows.Count 'Sovelletaan For loop For p = 2 To RowsNumber xColumn.Add InputRng.Cells(p, 1).Value, InputRng.Cells(p,1).Value Next Application.ScreenUpdating = False For p = 1 To xColumn.Count xColCr = xColumn.Item(p) OutputRng.Offset(p, 0) = xColCr InputRng.AutoFilter Field:=1, Criteria1:=xColCr Set xRowRg = InputRng.Range("B2:B" & RowsNumber).SpecialCells(xlCellTypeVisible) If xRowRg.Count> CountRow Then CountRow = xRowRg.Count 'Kopioidaan ja liimataan transponoimalla InputRng.Range("B2:B" &RowsNumber).SpecialCells(xlCellTypeVisible).Copy OutputRng.Offset(p, 1).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True Application.CutCopyMode = False Next OutputRng = InputRng.Cells(1, 1) OutputRng.Offset(0, 1).Resize(1, CountRow) = InputRng.Cells(1, 2) InputRng.Rows(1).Copy OutputRng.Resize(1, CountRow + 1).PasteSpecial Paste:=xlPasteFormatsInputRng.AutoFilter Application.ScreenUpdating = True End Sub 

Vaihe 3: Suorita ohjelma

  • Ensimmäinen, save ja paina F5 ohjelman suorittamiseksi.
  • Valitse tietueesi otsikon avulla.
  • Klikkaa OK .

  • Valitse solu saadaksesi lähtö
  • Napsauta sitten OK .

  • Tuloksena saat tuloksia, joissa rivit on siirretty sarakkeisiin, kuten alla olevassa kuvassa näkyy.

Lue lisää: Rivien siirtäminen sarakkeisiin Excel VBA:n avulla (4 ihanteellista esimerkkiä)

Päätelmä

Toivon, että tämä artikkeli on antanut sinulle opetusohjelma siitä, miten tehdä rivien siirtäminen sarakkeisiin Excelin kriteerien perusteella Kaikki nämä menettelyt on opittava ja sovellettava tietokokonaisuuteesi. Tutustu harjoituskirjaan ja testaa nämä taidot. Olemme motivoituneita tekemään tällaisia opetusohjelmia teidän arvokkaan tukenne ansiosta.

Jos sinulla on kysyttävää - Kysy rohkeasti meiltä. Voit myös vapaasti jättää kommentteja alla olevaan osioon.

Me, jotka olemme Exceldemy tiimi, vastaa aina kyselyihinne.

Pysy kanssamme & jatka oppimista.

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.