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

Vraag over het optellen van individuele cellen in excel

Status
Niet open voor verdere reacties.

FrancescoB

Gebruiker
Lid geworden
23 okt 2014
Berichten
7
Beste,

Ik heb een vraag over het optellen van individuele waarden in Excel 2010.

In het bijgevoegde document heb ik de eerste regels uit een groot bestand gekopieerd waarin ik een aantal dingen wil onderzoeken.
Het document bestaat uit 'producten' in kolom A die vervolgens bestaan uit een aantal 'deelproducten' in kolom C t/m BC ( in dit geval tot G)

Nu bestaat elk product uit een aantal individuele deelproducten, en uit een aantal deelproducten die regelmatig terugkomen.

Ik probeer overzichtelijk te krijgen:
A: hoeveel deelproducten zijn er totaal ? (aantal individuele cellen). Hiervoor heb ik een formule welke het aantal individuele cellen per kolom kan optellen, echter wil ik dit graag voor het gehele bereik doen (in dit geval van C1:G6). Het mooiste zou zijn als lege cellen en cellen waarin 0 voorkomt niet worden meegeteld.

B: Hoe vaak moet elk deel product geproduceerd worden wanneer ieder product eenmaal geproduceerd zou worden ?

In ben redelijk handig met Excel en heb wel iets ervaring in VBA, echter hier kom ik niet uit. Heeft iemand voor mij de gouden tip waarmee ik dit op kan lossen ?

Alvast hartstikke bedankt,

Francesco

Bekijk bijlage Vraag_helpmij.xlsx
 
misschien zo iets? je kan zelf de macro zo aanpassen dat lege cellen of nul cellen overgeslagen worden
Code:
Sub test() 
Call DeelProductenMetAantallen([c1:g6], [C9])
End Sub
Sub DeelProductenMetAantallen(Producten As Range, BeginOplossing As Range)
    Dim R As Range, D, Temp As String
    Set D = CreateObject("scripting.dictionary")
    For Each R In Producten
        Temp = CStr(R)
        If D.Exists(Temp) Then
            D(Temp) = D(Temp) + 1
        Else
            D.Add Temp, 1
        End If
    Next
    Set BeginOplossing = BeginOplossing.Resize(D.Count)
    BeginOplossing = WorksheetFunction.Transpose(D.keys)
    BeginOplossing.Offset(, 1) = WorksheetFunction.Transpose(D.items)
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan