Note: The other languages of the website are Google-translated. Back to English

 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?

mae doc yn trosi gwerthoedd unigryw 1

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


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:

mae doc yn trosi gwerthoedd unigryw 2

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:

mae doc yn trosi gwerthoedd unigryw 3

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:

mae doc yn trosi gwerthoedd unigryw 4

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:

mae doc yn trosi gwerthoedd unigryw 5

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:

mae doc yn trosi gwerthoedd unigryw 6


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:

mae doc yn trosi gwerthoedd unigryw 7

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:

mae doc yn trosi gwerthoedd unigryw 8

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:

mae doc yn trosi gwerthoedd unigryw 9


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.

mae doc yn trosi gwerthoedd unigryw 11

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:

mae doc yn trosi gwerthoedd unigryw 12

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:

mae doc yn trosi gwerthoedd unigryw 14 14

7. Yna cliciwch Ok botwm, a dewis cell i roi'r canlyniad hollt yn y blwch deialog popped allan, gweler y screenshot:

mae doc yn trosi gwerthoedd unigryw 15

8. Cliciwch OK, a byddwch yn cael y canlyniad yn ôl yr angen. Gweler y screenshot:

mae doc yn trosi gwerthoedd unigryw 16

Dadlwythwch a threial am ddim Kutools ar gyfer Excel Now!


Kutools ar gyfer Excel: gyda mwy na 300 o ychwanegiadau Excel defnyddiol, am ddim i geisio heb unrhyw gyfyngiad mewn 30 diwrnod. Dadlwythwch a threial am ddim Nawr!

Yr Offer Cynhyrchedd Swyddfa Gorau

Mae Kutools for Excel yn Datrys y rhan fwyaf o'ch Problemau, ac yn Cynyddu Eich Cynhyrchedd 80%

  • Ailddefnyddio: Mewnosod yn gyflym fformwlâu cymhleth, siartiau ac unrhyw beth rydych chi wedi'i ddefnyddio o'r blaen; Amgryptio Celloedd gyda chyfrinair; Creu Rhestr Bostio ac anfon e-byst ...
  • Bar Fformiwla Gwych (golygu llinellau lluosog o destun a fformiwla yn hawdd); Cynllun Darllen (darllen a golygu nifer fawr o gelloedd yn hawdd); Gludo i'r Ystod Hidlo...
  • Uno Celloedd / Rhesi / Colofnau heb golli Data; Cynnwys Celloedd Hollt; Cyfuno Rhesi / Colofnau Dyblyg... Atal Celloedd Dyblyg; Cymharwch y Meysydd...
  • Dewiswch Dyblyg neu Unigryw Rhesi; Dewiswch Blank Rows (mae pob cell yn wag); Darganfyddiad Gwych a Darganfyddiad Niwlog mewn Llawer o Lyfrau Gwaith; Dewis ar Hap ...
  • Copi Union Celloedd Lluosog heb newid cyfeirnod fformiwla; Auto Creu Cyfeiriadau i Daflenni Lluosog; Mewnosod Bwledi, Blychau Gwirio a mwy ...
  • Testun Detholiad, Ychwanegu Testun, Tynnu yn ôl Swydd, Tynnwch y Gofod; Creu ac Argraffu Subtotals Paging; Trosi rhwng Cynnwys a Sylwadau Celloedd...
  • Hidlo Super (arbed a chymhwyso cynlluniau hidlo i ddalenni eraill); Trefnu Uwch yn ôl mis / wythnos / dydd, amlder a mwy; Hidlo Arbennig gan feiddgar, italig ...
  • Cyfuno Llyfrau Gwaith a Thaflenni Gwaith; Uno Tablau yn seiliedig ar golofnau allweddol; Rhannwch Ddata yn Daflenni Lluosog; Trosi Swp xls, xlsx a PDF...
  • Mwy na 300 o nodweddion pwerus. Yn cefnogi Swyddfa / Excel 2007-2019 a 365. Yn cefnogi pob iaith. Defnydd hawdd yn eich menter neu sefydliad. Nodweddion llawn treial am ddim 30 diwrnod. Gwarant arian yn ôl 60 diwrnod.
tab kte 201905

Mae Tab Office yn Dod â rhyngwyneb Tabbed i'r Swyddfa, a 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!
gwaelod officetab
sylwadau (56)
Dim sgôr eto. Byddwch y cyntaf i sgorio!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Sut byddwn i'n mynd i'r cyfeiriad arall? O golofnau lluosog i mewn i un golofn? Diolch ymlaen llaw! Tim
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Roedd hyn yn wych. Roedd gen i excel gyda thua 2000 o werthoedd unigryw yn rhes A ac ni allwn fod wedi rheoli'r ymarfer hwn heb eich cymorth chi. Llawer o ddiolch.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae'r cam cyntaf ei hun yn methu = INDEX($A$2:$A$16, MATCH(0, COUNTIF($D$1:$D1, $A$2:$A$16), 0)) yn rhoi gwerth Ddim ar gael gwall
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Fi jyst eisiau gwneud y gwrthwyneb. Fel mae gen i'r canlyniad terfynol yn barod, ac rydw i eisiau cyflawni'r cam cyntaf.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwy'n edrych am yr un peth
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A wnaethoch chi ddod o hyd i unrhyw ateb ar gyfer y senario arall? Diolch!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwyf am wneud y gwrthwyneb hefyd. Unrhyw ateb gawsoch chi ddynion?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, bois,
I gael y canlyniad arall yn seiliedig ar enghraifft yr erthygl hon, gallwch gymhwyso'r cod VBA canlynol: (Sylwer: Wrth ddewis yr ystod ddata yr ydych am ei thrawsosod, peidiwch â chynnwys y rhes pennawd)

Sub TransposeUnique_2()
Dim xLRow, xLCCyfrif Cyhyd
Dim xRg Fel Ystod
Dim xOutRg Fel Ystod
Dim xObjRRg Fel Ystod
Dim xTxt Fel Llinyn
Dim x Cyfri Cyn Hir
Dim xVRg Fel Ystod
Ar Ail-ddechrau Gwall Nesaf
xTxt = ActiveWindow.RangeSelection.Address
Gosod xRg = Application.InputBox ("dewiswch ystod data:"", "Kutools ar gyfer Excel", xTxt , , , , , 8)
Gosod xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
Os yw xRg Yn Ddim Yna Ymadael Is
Os (xRg.Rows.count < 2) Neu _
(xRg.Areas.count > 1) Yna
MsgBox "Detholiad annilys", , "Kutools ar gyfer Excel"
Is Allanfa
Gorffennwch Os
Gosod xOutRg = Application.InputBox ("dewiswch ystod allbwn (nodwch un gell):", "Kutools ar gyfer Excel", xTxt, , , , , 8)
Os yw xOutRg Yn Ddim Yna Ymadael Is
Application.ScreenUpdating = Anghywir
xLCount = xRg.Columns.count
Ar gyfer xLRow = 1 I xRg.Rows.count
Gosod xObjRRg = Amrediad(xRg.Cells(xLRow, 2), xRg.Cells(xLRow, xLCCount)).SpecialCells(xlCellTypeConstants)
xObjRRg.Copi
xOutRg.Offset(, 1).PasteSpecial Paste:=xlPasteAll, Gweithredu:=xlNone, SkipBlanks:=Anghywir, Trawsosod:=Gwir
Application.CutCopyMode = Anghywir
Amrediad(Celloedd(xOutRg.Row, xOutRg.Column), Cells(xOutRg.Row + xObjRRg.count - 1, xOutRg.Column)).Gwerth = xRg.Cells(xLRow, 1).Gwerth
Gosod xOutRg = xOutRg.Offset(RowOffset:=xObjRRg.count)
Digwyddiadau
Application.ScreenUpdating = Gwir
Is-End
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Sut i wneud y trawsosod os nad oes gan golofn B werthoedd unigryw ond mae angen y gwerthoedd hynny o hyd
KTE 100
KTE 100
Gan dybio eu bod yn ddau drafodiad gwahanol
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, Didin,

A allwch chi roi eich problem yn gliriach neu'n fwy manwl?
Gallwch fewnosod sgrinlun enghreifftiol ar gyfer eich problem.
Diolch yn fawr!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Hi 'na,
A allech chi fy helpu gyda'r gofyniad isod.
Cynnyrch ----- archeb
KTE ------ 100KTE ------ 200KTO ------ 300KTO ------ 300
allbwn disgwyliedig
Cynnyrch ----- archeb ----- gorchymyn ------
KTE ------ 100 ------ 200
KTO ------ 300 ------ 300







Lleihawyd y sylw hwn gan y safonwr ar y wefan
Dwi angen yr un peth hefyd. Rwyf am arddangos 100 ddwywaith yw os oes yn y data
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A allwch awgrymu fformiwla ar gyfer hynny
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A gawsoch chi erioed ymateb/datrysiad i'r her hon? Mae gen i'r un un.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A oes ffordd o wneud hyn i'r gwrthwyneb? Hy data mewn rhesi o wahanol hyd ac felly ei ddidoli'n ddwy golofn? Gweler ynghlwm.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwyf am drawsosod gwerthoedd dyblyg hefyd (pob gwerth - unigryw + dyblyg) ac nid gwerthoedd unigryw yn unig. A allwch chi roi’r fformiwla ar gyfer hynny hefyd.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Dwi angen yr un peth
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A gawsoch chi erioed ymateb/datrysiad i'r her hon? Mae gen i'r un un.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Gyda'r fformiwla isod:

=IFERROR(INDEX($B$2:$B$45, MATCH(0, COUNTIF($D2:D2,$B$2:$B$45)+IF($A$2:$A$10<>$D2, 1, 0), 0)), 0)

Sut alla i drawsosod y data gan ddefnyddio cyfatebiaethau bras? Dywedwch, rwyf am dynnu'r holl werthoedd o Golofn B sy'n cyd-fynd â'r 9 nod / digid cyntaf o Golofn A? Mae gan golofn B 11 nod tra bod A yn unig 9. diolch!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae angen i mi wneud yn union i'r gwrthwyneb i hyn. Mae gen i lawer o golofnau sy'n gysylltiedig ag id rhes ac rwyf am eu pastio'n ddwy golofn
er enghraifft mae gen i
rowid, gwerth, gwerth1, gwerth2, gwerth3, gwerth4, gwerth..225
100, Dolffin, 255, 9--, sarah, jameson, ... .
179, Llwybrydd, llifeiriant, jason, 89, trwyn



Rwyf am iddo edrych fel hyn
100, Dolffin
100, 255
100, 9--
100, sarah
100, jaemeson
179, Llwybrydd
179, llifeiriant
179, jason
179, 89
179, trwyn
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, Dave,
I ddatrys eich problem, defnyddiwch y cod VBA isod: (Sylwer: Pan fyddwch chi'n dewis yr ystod ddata rydych chi am ei thrawsosod, peidiwch â chynnwys y rhes pennawd.)

Sub TransposeUnique_2()
Dim xLRow, xLCCyfrif Cyhyd
Dim xRg Fel Ystod
Dim xOutRg Fel Ystod
Dim xObjRRg Fel Ystod
Dim xTxt Fel Llinyn
Dim x Cyfri Cyn Hir
Dim xVRg Fel Ystod
Ar Ail-ddechrau Gwall Nesaf
xTxt = ActiveWindow.RangeSelection.Address
Gosod xRg = Application.InputBox ("dewiswch ystod data:"", "Kutools ar gyfer Excel", xTxt , , , , , 8)
Gosod xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
Os yw xRg Yn Ddim Yna Ymadael Is
Os (xRg.Rows.count < 2) Neu _
(xRg.Areas.count > 1) Yna
MsgBox "Detholiad annilys", , "Kutools ar gyfer Excel"
Is Allanfa
Gorffennwch Os
Gosod xOutRg = Application.InputBox ("dewiswch ystod allbwn (nodwch un gell):", "Kutools ar gyfer Excel", xTxt, , , , , 8)
Os yw xOutRg Yn Ddim Yna Ymadael Is
Application.ScreenUpdating = Anghywir
xLCount = xRg.Columns.count
Ar gyfer xLRow = 1 I xRg.Rows.count
Gosod xObjRRg = Amrediad(xRg.Cells(xLRow, 2), xRg.Cells(xLRow, xLCCount)).SpecialCells(xlCellTypeConstants)
xObjRRg.Copi
xOutRg.Offset(, 1).PasteSpecial Paste:=xlPasteAll, Gweithredu:=xlNone, SkipBlanks:=Anghywir, Trawsosod:=Gwir
Application.CutCopyMode = Anghywir
Amrediad(Celloedd(xOutRg.Row, xOutRg.Column), Cells(xOutRg.Row + xObjRRg.count - 1, xOutRg.Column)).Gwerth = xRg.Cells(xLRow, 1).Gwerth
Gosod xOutRg = xOutRg.Offset(RowOffset:=xObjRRg.count)
Digwyddiadau
Application.ScreenUpdating = Gwir
Is-End
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Diolch, mae'n gweithio'n berffaith, fe wnaethoch chi arbed 2 ddiwrnod i mi! :)
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Skyyang,
rhannwch y cod ar gyfer 3 colofn. Isod mae'r enghraifft:
Rwyf am i'r data fel: yogesh@gmail.com cymuned 1 barn yn unig cymuned 2 barn yn unig ...... goyal@gmail.com cymuned 1 barn yn unig cymuned 2 barn yn unig........

Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, ygoyal,

I ddatrys eich problem, defnyddiwch y cod isod:

Sub TransposeUnique_2()

Dim xLRow, xLCCyfrif Cyhyd

Dim xRg Fel Ystod

Dim xOutRg Fel Ystod

Dim xObjRRg Fel Ystod

Dim xTxt Fel Llinyn

Dim x Cyfri Cyn Hir

Dim xVRg Fel Ystod

Dim xC, xI, xI1, xI2 Fel Cyfanrif

Ar Ail-ddechrau Gwall Nesaf

xTxt = ActiveWindow.RangeSelection.Address

Gosod xRg = Application.InputBox ("dewiswch ystod data:"", "Kutools ar gyfer Excel", xTxt , , , , , 8)

Gosod xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)

Os yw xRg Yn Ddim Yna Ymadael Is

Os (xRg.Rows.Count < 2) Neu _

(xRg.Areas.Count > 1) Yna

MsgBox "Detholiad annilys", , "Kutools ar gyfer Excel"

Is Allanfa

Gorffennwch Os

Gosod xOutRg = Application.InputBox ("dewiswch ystod allbwn (nodwch un gell):", "Kutools ar gyfer Excel", xTxt, , , , , 8)

Os yw xOutRg Yn Ddim Yna Ymadael Is

Application.ScreenUpdating = Anghywir

xLCount = xRg.Columns.Count

Ar gyfer xLRow = 1 I xRg.Rows.Count

Gosod xObjRRg = Amrediad(xRg.Cells(xLRow, 2), xRg.Cells(xLRow, xLCCount)).SpecialCells(xlCellTypeConstants)

Ar Ail-ddechrau Gwall Nesaf

xC = (xObjRRg.Count Mod 2)

Os xC <> 0 Yna

xC = Int(xObjRRg.Count/2) + 1

arall

xC = Int(xObjRRg.Count/2)

Gorffennwch Os

xI1 = 1

xI2 = 2

Am xI = 1 I xC

Ystod(xObjRRg.Item(xI1), xObjRRg.Item(xI2)).Copi

xOutRg.Offset(, 1).PasteSpecial Paste:=xlPasteAll, Gweithredu:=xlNone, SkipBlanks:=Anghywir, Trawsosod:=Anghywir

Application.CutCopyMode = Anghywir

xOutRg.Value = xRg.Cells(xLRow, 1).Gwerth

Gosod xOutRg = xOutRg.Offset(RowOffset:=1)

xI1 = xI1 + (2)

xI2 = xI2 + (2)

Digwyddiadau

Digwyddiadau

Application.ScreenUpdating = Gwir

Is-End



Ceisiwch, gobeithio y gall eich helpu!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Bro, Mae'r cod yn gweithio gyferbyn. Cyfeiriwch at y llun sgrin atodedig o'r gofyniad. Mae'r data sydd ar gael yn rhesi ac eisiau trawsosod y data mewn colofnau .
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, ygoyal,
Mae'n ddrwg gennym am ymateb yn hwyr, os gwelwch yn dda cymhwyso'r cod canlynol, rhowch gynnig arni!

Unigryw is-drawsnewid()

'diweddaru erbyn Extendoffice

Dim xLRow Cyhyd

Dim i Cyhyd

Dim xCrit Fel Llinyn

Dim xCol Fel Casgliad Newydd

Dim xRg Fel Ystod

Dim xOutRg Fel Ystod

Dim xTxt Fel Llinyn

Dim x Cyfri Cyn Hir

Dim xVRg Fel Ystod

Dim xFRg, xSRg, xCRg Fel Ystod

Ar Ail-ddechrau Gwall Nesaf

xTxt = ActiveWindow.RangeSelection.Address

Gosod xRg = Application.InputBox ("dewiswch ystod data (dim ond 3 colofn):", "Kutools ar gyfer Excel", xTxt, , , , , 8)

Gosod xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)

Os yw xRg Yn Ddim Yna Ymadael Is

Os (xRg.Columns.Count <> 3) Neu _

(xRg.Areas.Count > 1) Yna

msgstr "Dim ond un ardal gyda dwy golofn yw'r amrediad a ddefnyddir", , "Kutools ar gyfer Excel"

Is Allanfa

Gorffennwch Os

Gosod xOutRg = Application.InputBox ("dewiswch ystod allbwn (nodwch un gell):", "Kutools ar gyfer Excel", xTxt, , , , , 8)

Os yw xOutRg Yn Ddim Yna Ymadael Is

Gosod xOutRg = xOutRg.Range(1)

xLRow = xRg.Rows.Count

Am i = 2 I xLRow

xCol.Ychwanegu xRg.Cells(i, 1).Gwerth, xRg.Cells(i, 1).Gwerth

Digwyddiadau

Application.ScreenUpdating = Anghywir

Application.ScreenUpdating = Anghywir

Am i = 1 I xCol.Count

xCrit = xCol.Item(i)

xOutRg.Offset(i, 0) = xCrit

xRg.AutoFilter Field:=1, Meini Prawf1:=xCrit

Gosod xVRg = xRg.Range("B2:B" & xLRow).SpecialCells(xlCellTypeVisible)

Os yw xVRg.Count > xCount Yna xCount = xVRg.Count

Gosod xSRg = xRg.Range("B2:B" & xLRow).SpecialCells(xlCellTypeVisible)

Gosod xCRg = xOutRg.Offset(i, 1)

Am Bob xFRg Mewn xSRg

xFRg.Copi

xCRg.PasteSpecial

xRg.Range("B1").Copi

xCRg.Offset(-(i), 0).PasteSpecial

xFRg.Offset(0, 1).Copi

Gosod xCRg = xCRg.Offset(0, 1)

xCRg.PasteSpecial

xRg.Range("c1").Copi

xCRg.Offset(-(i), 0).PasteSpecial

Gosod xCRg = xCRg.Offset(0, 1)

Digwyddiadau

Application.CutCopyMode = Anghywir

Digwyddiadau

xRg.Item(1).Copi

xOutRg.PasteSpecial

xRg.AutoFilter

Application.ScreenUpdating = Gwir

Is-End
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Hei Bro Ceisiais ddefnyddio'r cod hwn ond mae'r excel yn hongian pan fyddaf yn rhedeg y cod hwn ac ni allwn weld yr allbwn o'r cod uchod. awgrymwch beth i'w wneud yn yr achos hwn.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Heia,
Mae'r cod yn gweithio'n dda yn fy llyfr gwaith, pa fersiwn Excel ydych chi'n ei ddefnyddio?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
MS Excel 2016
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae'r cod yn gweithio'n iawn yn fy Excel 2016 hefyd, rhowch gynnig arni gyda rhywfaint o ddata ystod fach yn gyntaf.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Wedi profi ar 160 o gofnodion ond yn hynny o hyd dyblyg oedd yno.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Skyyang, Cariad hwn, unrhyw siawns y gallech ei gael i weithio ar gyfer pedair colofn? eto dim ond defnyddio'r ddau gyntaf fel cymharydd, neu'n well byth y gallu i ddewis nifer y colofnau cyn eu dewis? Edrychais ar eich sgript, ni fyddai gennyf unrhyw syniad sut i gyflawni hyn ...
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Skyyang, Cariad hwn, unrhyw siawns y gallech ei gael i weithio ar gyfer pedair colofn? eto dim ond defnyddio'r ddau gyntaf fel cymharydd, neu'n well byth y gallu i ddewis nifer y colofnau cyn eu dewis? Edrychais ar eich sgript, ni fyddai gennyf unrhyw syniad sut i gyflawni hyn ...
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Bro, pls help yn hyn.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Bro, dal i aros am eich help
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Yn yr un modd â Dave, mae angen i mi wneud yr union gyferbyn â hyn. Tabl 2 i'w drawsosod i Dabl 1. Tabl Mewnbwn 2, Tabl Allbwn 1 .
Lleihawyd y sylw hwn gan y safonwr ar y wefan
=Fe weithiodd INDEX($A$2:$A$16, MATCH(0, COUNTIF($D$1:$D1, $A$2:$A$16), 0)) i mi i drawsosod gwerthoedd unigryw colofn yn golofn newydd colofn OND...a oes modd hysbysebu mewn ffwythiant didoli fel bod y golofn newydd yn cael ei thrawsosod mewn trefn esgynnol?


Diolch!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Angen cael yr un peth allan ond ar gyfer colofnau rhagddiffiniedig fyddai ($A,$B) ac angen y golofn allbwn Safle ar $D$1.
Os oes gan unrhyw un syniadau byddai hynny'n help mawr!!!!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, gallwn ni ychwanegu pob rhes a rhoi'r allbwn mewn un golofn, gyda'r swyddogaeth uchod.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Felly dwi'n gweithio i gwmni. Mae gennym golofnau ar gyfer gwybodaeth fel Cyfenw, enw cyntaf, rheng, adran, rhif ffôn, cyfeiriad. A oes ffordd y gallaf ddefnyddio fformiwla debyg i drawsosod y rhes gyfan o wybodaeth i golofn wrth enwau?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
=Gweithiodd INDEX($A$2:$A$16, MATCH(0, COUNTIF($D$1:$D1, $A$2:$A$16), 0)) i mi i drawsosod gwerthoedd unigryw colofn A yn golofn newydd colofn OND...a oes ffordd i gael yr holl werthoedd yng ngholofn B i gael eu trawsosod fel y nodir isod:

Cynnyrch Gorchymyn Dyddiad Gorchymyn Cynnyrch Gorchymyn Gorchymyn Gorchymyn Gorchymyn
KTE 100 3/3/2019 KTE 100 100 100 200 100 150 100
KTO 150 3/3/2019 KTO 150 100 200 100 150 200
KTE 100 3/4/2019 BOT 150 100 200 150 100 200
KTO 100 3/4/2019 COD 200 150 100 150
KTO 200 3/5/2019
KTE 100 3/5/2019
BOT 150 3/5/2019
BOT 100 3/6/2019
KTO 100 3/6/2019
KTE 200 3/6/2019
BOT 200 3/7/2019
COD 200 3/7/2019
KTE 100 3/7/2019
KTO 150 3/7/2019
BOT 150 3/8/2019
KTE 150 3/8/2019
COD 150 3/8/2019
BOT 100 3/9/2019
BOT 200 3/10/2019
COD 100 3/10/2019
KTO 200 3/10/2019
COD 150 3/11/2019
KTE 100 3/11/2019
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Nid oedd y macro yn gweithio. Roedd newydd gopïo'r cynnwys yng nghell A1.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae gen i set ddata yng Ngholofnau A (ID Unigryw) - E. Mae gan bob rhes ddata yn seiliedig ar yr ID#, mae rhesi lluosog ar gyfer pob ID# ond rydw i eisiau un rhes fesul ID# gyda'r holl ddata arall mewn colofnau ( byddai'n 5 colofn o hyd ac uchafswm o 25 yn dibynnu ar faint sydd gan bob ID unigryw). Fe wnes i ddod o hyd i god ond dim ond ar gyfer dwy golofn y mae'n gweithio. Roedd yn rhaid i mi concatenate y pedair colofn (heb gynnwys ID) yna delimit ar ôl rhedeg y macro (lot o waith). Ar gyfer 15,000 o resi o ddata mae hyn yn cymryd llawer o amser ychwanegol. A oes macro colofn ddiddiwedd a fyddai'n gweithio? Diolch ymlaen llaw i bawb am eich cymorth!
ID COD ST COD# DYDDIAD
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae gen i set ddata sydd ag IDau lluosog yng ngholofn A, ac sydd wedi cysylltu data yng ngholofn B. Defnyddiais y fformiwla uchod a'i newid ychydig fel fy mod yn trawsosod y celloedd yng ngholofn B yn rhes yn seiliedig ar yr ID unigryw ynghlwm wrtho yng ngholofn A. Y fformiwla a ddefnyddir i adnabod yr IDau unigryw yw: =INDEX($A$2:$A$13409, MATCH(0, COUNTIF($D$1:$D1, $A$2:$A$13409), 0)). Y fformiwla a ddefnyddir i wneud y trawsosod yw: =IFERROR(INDEX($B$2:$B$13409, MATCH(0, IF($A$2:$A$13409<>$D2, 1, 0))+COUNTIF($D2:): D2,$B$2:$B$13409), 0)), "Amh"). Rhoddir y ddau yn yr erthygl, dim ond ychydig wedi'u newid.

Y broblem yw bod gan fy set ddata yng ngholofn B ddyblygiadau, weithiau'n ymddangos un ar ôl y llall, ac mae angen i'r holl werthoedd yn y golofn gael eu cyflwyno yn y rhesi.

Y ddelwedd sydd ynghlwm yw'r hyn yr hoffwn i'r tabl ei ddangos (maint sampl bach yw hwn, mae gan y gwir set ddata dros 13,000 o gofnodion). Yr hyn sy'n digwydd nawr yw pan fydd gwerth ailadrodd yn dod ar draws, ni fydd yn ei gyfrif.
hy dim ond 9 -11980 -0 -31.79 -0.19 D/A/G y mae Rhes 0.74 ar gyfer ID 0 yn ei ddangos .... pan mai'r hyn sydd ei angen arnaf i'w ddangos yn lle hynny yw 0 31.79 -0.19 -0.74 -0 0 XNUMX Amh. ...

A oes ffordd o weithio o gwmpas y mater hwn a'i ddatrys?

Diolch i chi ymlaen llaw!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A gawsoch chi erioed ymateb/datrysiad i'r her hon? Mae gen i'r un un.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae gen i set ddata sydd â 3 colofn wedi'u cyflwyno isod:



Colofn A Colofn B Colofn C



Gwlad1 Blwyddyn1 Gwerth1

Gwlad1 Blwyddyn2 Gwerth2

Gwlad1 Gwerth Blwyddyn3 3,



Gwlad2 Blwyddyn1 Gwerth1

Gwlad2 Gwerth Blwyddyn3 3,

...........



Mae angen i mi gyfuno'r 3 colofn hyn mewn tabl fel hyn:

Blwyddyn 1 Blwyddyn 2 Blwyddyn3 ................................. BlwyddynX



Gwlad1 Gwerth1 Gwerth2 Gwerth3

Gwlad2 Gwerth1 #Gwerth Coll3

.....
.....
.....

CountryX Valuex ..................





Y broblem sy'n fy wynebu yw nad oes gen i werthoedd ar gyfer pob blwyddyn ar gyfer rhai yn unig ar gyfer rhai data yng ngholofn A. (Er enghraifft mae gan wlad 2 werthoedd coll ar gyfer Blwyddyn 2)





A oes ffordd o weithio o gwmpas y mater hwn a'i ddatrys?



Diolch i chi ymlaen llaw!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
a allwch chi rannu'r cod os oes 2 golofn i'w copïo yn lle 1. isod mae'r enghraifft.
Nid oes unrhyw sylwadau wedi'u postio yma eto
Llwytho mwy o
Gadewch eich sylwadau
Postio fel Gwestai
×
Graddiwch y swydd hon:
0   Cymeriadau
Lleoliadau a Awgrymir