• 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.

Lijst inkorten door samenvoegen

Status
Niet open voor verdere reacties.

UnnamedNL

Gebruiker
Lid geworden
2 dec 2009
Berichten
22
Goedemorgen Helpmij forumleden,

Ik heb mijn Excel'tool' zo goed als gereed.
De output is nu alleen nog niet helemaal perfect.
Ik heb nu een lijst die ingekort zou moeten worden.
Zie hier bijgevoegd.
Bekijk bijlage UnnamedNL inkorten.xlsx
in het kort:
lijst 1:
A B
A B
C D E

moet geconverteerd worden naar lijst 2:
2 stuks A B
1 stuks C D E

Is dat mogelijk?

Met vriendelijke groet,

Barend
 
Dat kun je met de eenvoudigst denkbare draaitabel realiseren.
Geef de kolommen wel een kolomkop mee.
Gebruik ook altijd cel A1 in een werkblad.
 
@ excelamateur.
Hiermee kom ik er niet helemaal omdat dit maar naar 1 kolom kijkt.

@snb
Ik ga de draaitabel eens proberen.
Nog nooit mee gewerkt.
 
Je zal de code een beetje moeten aanpassen naar jouw wensen.
Met een Draaitabel heb ik ook niet veel ervaring.
Voor me zelf heb ik dit niet nodig.
 
zie bijlage
 

Bijlagen

  • __draaierig snb.xlsb
    12,3 KB · Weergaven: 33
Ik ben er bij uit dankzij alle hulp.
De macro waar @ExcelAmateur me op wees heb ik gebruikt en aangepast.
Dit werkt bijna en ik begrijp het grootste deel van de code.

Het laatste punt wil nog niet. Dat is de bovenste rij optellen.

Bekijk bijlage UnnamedNL inkorten.xlsm

Hoe krijg ik dit voor elkaar.
De code heeft inderdaad af en toe het bereik vanaf de 2e rij.
Maar welke moet ik aanpassen.

Hierna ben ik compleet.


P.S. Evengoed bedankt snb maar een macro is makkelijker dan de draaitabel voor deze toepassing.
 
Het komt doordat de formule die @Excelamateur hanteert begint bij rij 2; '=aantal.als("A2:A.... ,A2)'

Iets korter:
Code:
Sub Optellen()
Sheets("blad3").Cells(1).CurrentRegion.Columns(1).Name = "bereik"
 [bereik].Offset(, 8) = [if(row(bereik),countif(bereik,bereik))]
 [bereik].Resize(, 9).RemoveDuplicates 1
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan