Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Excel 2003] Horizontale data sorteren naar verticale lijst

Pagina: 1
Acties:

  • mickezzz
  • Registratie: April 2005
  • Laatst online: 30-11-2022
Ik heb een excel file die codes genereerd. Deze codes staan horizontaal naast elkaar:

Kolom A, Kolom B, Kolom C, Kolom D


Code 1A, Code 1B, Code 1C, Leeg
Code 2A, Code 2B, Code 2C, Leeg

Nu wilde ik een lijst creeren in het volgende formaat:

Code1A
Code1B
Code1C
Leeg
Code2A
Code2B
Code2C
Leeg

De software die deze lijst moet importeren kan de code alleen op deze manier lezen. Ik heb al gekeken naar meerdere functies zoals de INDEX functie, Transpose plakken, etc, maar niks lijkt het in deze volgorde te krijgen. Ik krijg op internet niks soortgelijks gevonden.

Any genius out here 8) ?

[ Voor 11% gewijzigd door mickezzz op 19-07-2011 11:36 ]

MBP 2015, iPhone 7+, AppleTV4


  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 18:27
Gewoon zegggen op die verticale cellen
"=A1"
"=B1"
"=C1"

ofzo?

[ Voor 16% gewijzigd door ThinkPad op 19-07-2011 10:40 ]


  • mickezzz
  • Registratie: April 2005
  • Laatst online: 30-11-2022
ThinkPadd schreef op dinsdag 19 juli 2011 @ 10:34:
Gewoon zegggen op die verticale cellen
"=A1"
"=B1"
"=C1"

ofzo?
Thanks voor de snelle reply.
Zoiets had ik al geprobeerd, door 2 rijen aan te geven en dan door te trekken:

=A1
=B1
=C1
=D1
=A2
=B2
=C2
=D2
Dit vervolgens doortrekken. Maar dan houd Excel niet te goeie volgorde aan... :(

MBP 2015, iPhone 7+, AppleTV4


  • mickezzz
  • Registratie: April 2005
  • Laatst online: 30-11-2022
Via visual basic scriptje is het gelukt (niet netjes geprogrammeerd).

Voor de geinteresseerde:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Sub test()


Dim waarde1
Dim waarde2
Dim waarde3
Dim celadres


Range("L2").Select 'L2 was in mijn geval Kolom A

Do Until IsEmpty(ActiveCell)
    waarde1 = ActiveCell.Value
    waarde2 = ActiveCell.Offset(0, 1).Value
    waarde3 = ActiveCell.Offset(0, 2).Value
    celadres = ActiveCell.Address
    
    
    Range("A46").Select 'hier wordt de lijst gegenereerd    
    Do Until IsEmpty(ActiveCell)
    ActiveCell.Offset(1, 0).Select
    Loop
    
    ActiveCell.Value = waarde1
    ActiveCell.Offset(1, 0).Value = waarde2
    ActiveCell.Offset(2, 0).Value = waarde3
    Range(celadres).Select
    ActiveCell.Offset(1, 0).Select

Loop

End Sub

MBP 2015, iPhone 7+, AppleTV4


  • G8rb8n
  • Registratie: Maart 2007
  • Laatst online: 17:32
Misschien als wat mosterd na de maaltijd, maar hoewel de macro prima werkt had dit ook in formulevorm gekund:

Uitgangspunt: data begint in kolom A op regel 1.

Onderstaande formule beginnen in een regel dat een veelvoud van 4 is (voorbeeld is starten vanuit rij 4):
INDEX($A$1:$D$2;AFRONDEN.BENEDEN(RIJ()/4;1);REST(RIJ();4)+1)

  • mickezzz
  • Registratie: April 2005
  • Laatst online: 30-11-2022
G8rb8n schreef op dinsdag 19 juli 2011 @ 19:52:
Misschien als wat mosterd na de maaltijd, maar hoewel de macro prima werkt had dit ook in formulevorm gekund:

Uitgangspunt: data begint in kolom A op regel 1.

Onderstaande formule beginnen in een regel dat een veelvoud van 4 is (voorbeeld is starten vanuit rij 4):
INDEX($A$1:$D$2;AFRONDEN.BENEDEN(RIJ()/4;1);REST(RIJ();4)+1)
Bedankt, binnenkort proberen (moet namelijk de functies naar het Engels vertalen. :)

MBP 2015, iPhone 7+, AppleTV4

Pagina: 1