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

Comprimeerfunctie doormiddel van Dictionary

Status
Niet open voor verdere reacties.

koenkidv

Gebruiker
Lid geworden
12 apr 2012
Berichten
12
Beste Excellers,

ik heb een vraag over een comprimeerfunctie met vba.
Nu heb ik de volgende functie van waarschijnlijk de gebruikers snb en timshel.
Ik had deze vraag op worksheet.nl staan en kan dus helaas de link niet kopiëren

Wat ik nog weet van de vraag die ik zelf stelde is dat ik op zoek was naar een comprimeerfunctie doormiddel van vba.
In deze functie wou ik de waardes uit de 4de kolom achter elkaar gezet (C1+C2, dus C1,C2 Etc.)
en de waardes uit de 5de kolom opgeteld (1+1, dus 2)
Dit werkt allemaal perfect.

Nu de huidige vraag. Hoe kan ik ervoor zorgen dat kolom 34 ook opgeteld word net zoals kolom 5.
Ik hoor graag van julie
bedankt alvast
Koen



Code:
    Br = Range("A21:AI" & lastrange + 20)
    ReDim sq(1)
    With CreateObject("Scripting.Dictionary") ''''het aanroepen van de dictionary''''
        For p = 1 To UBound(Br)
             strS = Br(p, 1) & "|" & Br(p, 2) & "|" & Br(p, 3) & "|" & Br(p, 6) & "|" & Br(p, 7) & "|" & Br(p, 8) & "|" & Br(p, 9) & "|" & Br(p, 10) & "|" & Br(p, 11) & "|" & Br(p, 12) & "|" & Br(p, 13) & "|" & Br(p, 14) & "|" & Br(p, 15) & "|" & Br(p, 16) & "|" & Br(p, 17) & "|" & Br(p, 18) & "|" & Br(p, 19) & "|" & Br(p, 20) & "|" & Br(p, 21) & "|" & Br(p, 22) & "|" & Br(p, 23) & "|" & Br(p, 24) & "|" & Br(p, 25) & "|" & Br(p, 26) & "|" & Br(p, 27) & "|" & Br(p, 28) & "|" & Br(p, 29) & "|" & Br(p, 30) & "|" & Br(p, 31) & "|" & Br(p, 32) & "|" & Br(p, 33) & "|" & Br(p, 35) '''Selecteren van kolommen waarop gecomprimeerd moet worden''''
            sn = .Item(strS)
            If IsEmpty(sn) Then sn = sq
            .Item(strS) = Split(sn(0) & IIf(sn(0) = "", "", ",") & Br(p, 4) & ":)" & sn(1) + Br(p, 5), ":)")    '''''''kolommen geselecteerd waarop gesorteerd wordt''''''
        Next
        Blad1.Range("A21:AI" & lastrange + 20).ClearContents ''''leegmaken van kolom''''
        Blad1.Range("A21").Resize(.Count, 2) = Application.index(.Items, 0, 0) ''''locatie bepalen plus index'''' resultaat van comprimeren (optellen aantal + referenties)
        Blad1.Range("C21").Resize(.Count) = Application.Transpose(.Keys)            'overige kolommen uit dictionary neerzetten in 1 cel
        Blad1.Range("A21:AI" & lastrange + 20).Columns(3).TextToColumns , 1, , , 0, 0, 0, 0, -1, "|"    'splitsen van tekst naar kolommen
    End With
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan