• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Rangschikkings vraag

Status
Niet open voor verdere reacties.

Mieketie

Gebruiker
Lid geworden
16 sep 2006
Berichten
92
Hey specialisten,

Ik zit met een issue.

Zie bijlage.
Blad1 is de bron.
de kolom Art Sjab Cde bevat verschillende gelijke waarden.
De achterliggende kolommen bevatten waarden die per rij ook gelijk kunnen zijn (maar ook dubbele waarden op verschillende rijen).

Deze moet ik nu rangschikken op een bepaalde manier.
Ik zoek een manier waarmee ik het resultaat van Blad2 kan halen.

Elke Art Sjab Cde moet één rij met één enkele unieke waarde bevatten uit de vorige pagina. De volgorde van deze is zelfs niet belangrijk.

Alvast bedankt voor jullie inzichten.
 

Bijlagen

Welke Excel versie gebruik je?
 
Ja, dat geeft wat meer formules om mee te spelen. Ik kom erop terug.
 
Laatst bewerkt:
Hallo Mieketie,

De volgorde was niet belangrijk, dus die is iets anders, maar bijgaand een poging.

groet
 

Bijlagen

Of met een macro. Met power query zou het het ook moeten kunnen.

Code:
Sub VenA()
  ar = Sheets("Blad1 (Bron)").Cells(1).CurrentRegion
  Dim a(1)
  Set d = CreateObject("Scripting.Dictionary")
    For j = 2 To UBound(ar)
      For jj = 2 To UBound(ar, 2)
        If ar(j, jj) <> "" Then
          a(0) = ar(j, 1)
          a(1) = ar(j, jj)
          d(ar(j, 1) & "|" & ar(j, jj)) = a
        End If
      Next jj
    Next j
    Sheets("Blad2 (Gewenst resultaat)").Cells(1, 10).Resize(d.Count, 2) = Application.Index(d.items, 0)
End Sub
 
De pipe is daarbij overbodig.

Het pakt code33 en 3 als zowel code3 en 33.
Ook al waren het getallen in kolom A.
33 en 3 alsook 3 en 33 wordt gewoon apart genomen in het resultaat.
 
@HSV
Misschien dat het in dit voorbeeld overbodig is. Maar vaak komen voorbeeldjes niet met de werkelijkheid overeen. Als ik 33 en 3 aanelkaar plak of 3 en 33 aanelkaar plak dan is de key in beide gevallen 333 wat dus niet correct is.
Met jouw suggestie krijg ik maar 1 regel als resultaat en volgens mij moeten dat er 2 zijn. Dus lijkt mij de "|"niet overbodig.
 

Bijlagen

Je hebt gelijk, ik doe de pipe ook altijd net als in formules maar wilde eens een testje doen.
Ik had getest zonder de pipe om te kijken of de key ook de key bleef en de items apart genomen zouden worden.

Ik krijg nu inderdaad met geen mogelijkheid het resultaat wat ik daarvoor wel verkreeg. :eek:
Laat het er maar mooi tussen; het zal wel een spatie zijn geweest.
 
Met Power Query, een (eventueel verborgen) hulpblad voor gegevensbewerking, en de nieuwe Excel365 functie UNIEK kan ik de gewenste lijst produceren. Uitleg in bijlage.
 

Bijlagen

Of met een macro. Met power query zou het het ook moeten kunnen.

Code:
Sub VenA()
  ar = Sheets("Blad1 (Bron)").Cells(1).CurrentRegion
  Dim a(1)
  Set d = CreateObject("Scripting.Dictionary")
    For j = 2 To UBound(ar)
      For jj = 2 To UBound(ar, 2)
        If ar(j, jj) <> "" Then
          a(0) = ar(j, 1)
          a(1) = ar(j, jj)
          d(ar(j, 1) & "|" & ar(j, jj)) = a
        End If
      Next jj
    Next j
    Sheets("Blad2 (Gewenst resultaat)").Cells(1, 10).Resize(d.Count, 2) = Application.Index(d.items, 0)
End Sub

Beste VenA,

u heeft het bij het rechte eind. Helaas ben ik niet zo een sterke VBA'er maar ik moet er dringend werk van maken. Heel erg bedankt voor uw bijdrage.

Mvg
 
Met Power Query, een (eventueel verborgen) hulpblad voor gegevensbewerking, en de nieuwe Excel365 functie UNIEK kan ik de gewenste lijst produceren. Uitleg in bijlage.

Beste AlexCEL,

Ook uw manier geeft het resultaat dat ik nodig had. Ik kwam er echter niet uit met PowerQuery, maar de manier waarop u het heeft voorgesteld was een oogopener voor mij. Op die manier had ik het nog niet geprobeerd. Heel erg bedankt voor uw bijdrage.

Mvg
 
Hallo Mieketie,

De volgorde was niet belangrijk, dus die is iets anders, maar bijgaand een poging.

groet

Beste Dirktimm,

Heel erg bedankt voor uw bijdrage maar helaas gaf dit niet het juiste resultaat.

Mvg
 
Laatst bewerkt:
Je hebt gelijk, ik doe de pipe ook altijd net als in formules maar wilde eens een testje doen.
Ik had getest zonder de pipe om te kijken of de key ook de key bleef en de items apart genomen zouden worden.

Ik krijg nu inderdaad met geen mogelijkheid het resultaat wat ik daarvoor wel verkreeg. :eek:
Laat het er maar mooi tussen; het zal wel een spatie zijn geweest.

Beste HSV,

Heel erg bedankt voor uw bijdrage en de leuke discussie met VenA. Ik heb er van genoten en ik vind uw Gronings moto zeer terecht trouwens :-D

Mvg
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan