Sut i drawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw mewn colofn arall?
Gan dybio, mae gennych chi ystod o ddata sy'n cynnwys dwy golofn, nawr, rydych chi am drawsosod celloedd mewn un golofn i resi llorweddol yn seiliedig ar werthoedd unigryw mewn colofn arall i gael y canlyniad canlynol. Oes gennych chi unrhyw syniadau da i ddatrys y broblem hon yn Excel?
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda fformwlâu
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda chod VBA
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda Kutools ar gyfer Excel
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda fformwlâu
Gyda'r fformwlâu arae canlynol, gallwch echdynnu'r gwerthoedd unigryw a thrawsnewid eu data cyfatebol yn rhesi llorweddol, gwnewch fel a ganlyn:
1. Rhowch y fformiwla arae hon: = MYNEGAI ($ A $ 2: $ A $ 16, MATCH (0, COUNTIF ($ D $ 1: $ D1, $ A $ 2: $ A $ 16), 0)) i mewn i gell wag, D2, er enghraifft, a'r wasg Shift + Ctrl + Enter allweddi gyda'i gilydd i gael y canlyniad cywir, gweler y screenshot:
Nodyn: Yn y fformiwla uchod, A2: A16 yw'r golofn rydych chi am restru'r gwerthoedd unigryw ohoni, a D1 yw'r gell uwchben y gell fformiwla hon.
2. Yna llusgwch y ddolen llenwi i lawr i'r celloedd i echdynnu'r holl werthoedd unigryw, gweler y screenshot:
3. Ac yna ewch ymlaen i nodi'r fformiwla hon yng nghell E2: =IFERROR(INDEX($B$2:$B$16, MATCH(0, COUNTIF($D2:D2,$B$2:$B$16)+IF($A$2:$A$16<>$D2, 1, 0), 0)), 0), a chofiwch bwyso Shift + Ctrl + Enter allweddi i gael y canlyniad, gweler y screenshot:
Nodyn: Yn y fformiwla uchod: B2: B16 yw'r data colofn rydych chi am ei drawsosod, A2: A16 yw'r golofn rydych chi am drawsosod y gwerthoedd yn seiliedig arni, a D2 yn cynnwys y gwerth unigryw rydych chi wedi'i dynnu yng Ngham 1.
4. Yna llusgwch y ddolen llenwi i'r dde o'r celloedd rydych chi am restru'r data a drawsosodwyd nes arddangosfeydd 0, gweler y screenshot:
5. Ac yna parhewch i lusgo'r handlen llenwi i lawr i'r ystod o gelloedd i gael y data a drawsosodwyd fel y dangosir y screenshot canlynol:
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda chod VBA
Efallai bod y fformwlâu yn gymhleth i chi eu deall, yma, gallwch redeg y cod VBA canlynol i gael y canlyniad a ddymunir sydd ei angen arnoch.
1. Daliwch i lawr y ALT + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.
2. Cliciwch Mewnosod > Modiwlau, a gludwch y cod canlynol yn y Modiwlau Ffenestr.
Cod VBA: Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw mewn colofn arall:
Sub transposeunique()
'updateby Extendoffice
Dim xLRow As Long
Dim i As Long
Dim xCrit As String
Dim xCol As New Collection
Dim xRg As Range
Dim xOutRg As Range
Dim xTxt As String
Dim xCount As Long
Dim xVRg As Range
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("please select data range(only two columns):", "Kutools for Excel", xTxt, , , , , 8)
Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
If xRg Is Nothing Then Exit Sub
If (xRg.Columns.Count <> 2) Or _
(xRg.Areas.Count > 1) Then
MsgBox "the used range is only one area with two columns ", , "Kutools for Excel"
Exit Sub
End If
Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
If xOutRg Is Nothing Then Exit Sub
Set xOutRg = xOutRg.Range(1)
xLRow = xRg.Rows.Count
For i = 2 To xLRow
xCol.Add xRg.Cells(i, 1).Value, xRg.Cells(i, 1).Value
Next
Application.ScreenUpdating = False
For i = 1 To xCol.Count
xCrit = xCol.Item(i)
xOutRg.Offset(i, 0) = xCrit
xRg.AutoFilter Field:=1, Criteria1:=xCrit
Set xVRg = xRg.Range("B2:B" & xLRow).SpecialCells(xlCellTypeVisible)
If xVRg.Count > xCount Then xCount = xVRg.Count
xRg.Range("B2:B" & xLRow).SpecialCells(xlCellTypeVisible).Copy
xOutRg.Offset(i, 1).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Application.CutCopyMode = False
Next
xOutRg = xRg.Cells(1, 1)
xOutRg.Offset(0, 1).Resize(1, xCount) = xRg.Cells(1, 2)
xRg.Rows(1).Copy
xOutRg.Resize(1, xCount + 1).PasteSpecial Paste:=xlPasteFormats
xRg.AutoFilter
Application.ScreenUpdating = True
End Sub
3. Yna, pwyswch F5 allwedd i redeg y cod hwn, a bydd blwch prydlon yn popio allan i'ch atgoffa i ddewis yr ystod ddata rydych chi am ei defnyddio, gweler y screenshot:
4. Ac yna cliciwch OK botwm, bydd blwch prydlon arall yn popio allan i'ch atgoffa i ddewis cell i roi'r canlyniad, gweler y screenshot:
6. Cliciwch OK botwm, ac mae'r data yng ngholofn B wedi'i drawsosod yn seiliedig ar werthoedd unigryw yng ngholofn A, gweler y screenshot:
Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda Kutools ar gyfer Excel
Os oes gennych Kutools ar gyfer Excel, gan gyfuno'r Rhesi Cyfuno Uwch ac Celloedd Hollt cyfleustodau, gallwch chi orffen y dasg hon yn gyflym heb unrhyw fformiwlâu na chod.
Kutools ar gyfer Excel : gyda mwy na 300 o ychwanegiadau Excel defnyddiol, am ddim i geisio heb unrhyw gyfyngiad mewn 30 diwrnod. |
Ar ôl gosod Kutools ar gyfer Excel, gwnewch fel a ganlyn:
1. Dewiswch yr ystod ddata rydych chi am ei defnyddio. (Os ydych chi am gadw'r data gwreiddiol, copïwch a gludwch y data i leoliad arall yn gyntaf.)
2. Yna cliciwch Kutools > Uno a Hollti > Rhesi Cyfuno Uwch, gweler y screenshot:
3. Yn y Cyfuno Rhesi Yn Seiliedig ar Golofn blwch deialog, gwnewch y gweithrediadau canlynol:
(1.) Cliciwch enw'r golofn rydych chi am drawsosod data yn seiliedig arni, a'i dewis Allwedd Cynradd;
(2.) Cliciwch colofn arall yr ydych am ei thrawsosod, a chlicio Cyfunwch yna dewiswch un gwahanydd i wahanu'r data cyfun, fel gofod, coma, hanner colon.
4. Yna cliciwch Ok botwm, mae'r data yng ngholofn B wedi'i gyfuno gyda'i gilydd mewn un cell yn seiliedig ar y golofn A, gweler y screenshot:
5. Ac yna dewiswch y celloedd cyfun, a chlicio Kutools > Uno a Hollti > Celloedd Hollt, gweler y screenshot:
6. Yn y Celloedd Hollt blwch deialog, dewiswch Hollti i Golofnau O dan y math opsiwn, ac yna dewiswch y gwahanydd sy'n gwahanu'ch data cyfun, gweler y screenshot:
7. Yna cliciwch Ok botwm, a dewis cell i roi'r canlyniad hollt yn y blwch deialog popped allan, gweler y screenshot:
8. Cliciwch OK, a byddwch yn cael y canlyniad yn ôl yr angen. Gweler y screenshot:
Dadlwythwch a threial am ddim Kutools ar gyfer Excel Nawr !
Demo: Trawsosod celloedd mewn un golofn yn seiliedig ar werthoedd unigryw gyda Kutools ar gyfer Excel
Offer Cynhyrchiant Swyddfa Gorau
Supercharge Eich Sgiliau Excel gyda Kutools ar gyfer Excel, a Phrofiad Effeithlonrwydd Fel Erioed Erioed. Kutools ar gyfer Excel Yn Cynnig Dros 300 o Nodweddion Uwch i Hybu Cynhyrchiant ac Arbed Amser. Cliciwch Yma i Gael Y Nodwedd Sydd Ei Angen Y Mwyaf...
Mae Office Tab yn dod â rhyngwyneb Tabbed i Office, ac yn Gwneud Eich Gwaith yn Haws o lawer
- Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
- Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
- Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!