Ga naar inhoud

Opzoeken gelijke producten met opgetelde voorraad als uitkomst.


Aanbevolen berichten

Geplaatst:

Hallo,

Momenteel lukt dit voor kleine bestanden, maar voor bestanden met meer dan 50000 producten krijg ik niks te zien met deze formule, dus graag een formule die dit wel aan kan.

Zie bijgevoegde Exel met formule die ik nu gebruik voor kleine bestanden.

 

Alvast bedankt voor de hulp,

 

Peter

STOCK TOTAAL VOORBEELD.xlsx

Geplaatst: (aangepast)

Typ in C2 van het blad "Producten" en kopieer naar beneden:

=SOMMEN.ALS(stock!$B$2:$B$41;stock!A$2:A$41;B2)

Ook andere oplossingen zijn mogelijk.

Opm: Het eerste gedeelte in je formule: =ALS(ISFOUT(SOMPRODUCT((stock!$A$2:$A$41=$B2)*(stock!$B$2:$B$41))) heeft geen enkel nut, want het resultaat daarvan is nooit 'fout' (zoals aan je resultaten te zien is); het is ofwel 0 ofwel een ander getal. Maar somproduct is voor een groot aantal rijen nooit aan te bevelen.

 

aangepast door alpha
Geplaatst:

Een andere oplossing. :)

Sub tst()
    Dim dic As Object, sn, i As Long
    sn = Blad2.Cells(1).CurrentRegion.Value
    Set dic = CreateObject("scripting.dictionary")
    For i = 2 To UBound(sn)
        If Not dic.exists(sn(i, 1)) Then
            dic.Add sn(i, 1), sn(i, 2)
            Else: dic.Item(sn(i, 1)) = dic.Item(sn(i, 1)) + sn(i, 2)
        End If
    Next
    sn = Blad1.Cells(1).CurrentRegion.Resize(, 3).Value
    For i = 2 To UBound(sn)
        If dic.exists(sn(i, 2)) Then
            sn(i, 3) = dic.Item(sn(i, 2))
        Else: sn(i, 3) = 0
        End If
    Next
    Blad1.Cells(1).Resize(UBound(sn), 3) = sn
End Sub

 

Geplaatst:

Hallo,

 

Alpha en bakerman, jullie zijn bedankt voor de vlugge respons en de oplossingen, ik kan nu terug verder werken aan de inventaris 👍.

 

Met vriendelijke groeten,

Peter

Gast
Dit topic is nu gesloten voor nieuwe reacties.
×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.