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

formule som.als over verschillende bladen

Status
Niet open voor verdere reacties.

rmol

Gebruiker
Lid geworden
17 apr 2007
Berichten
6
Ik heb een totaalblad met een keuzelijst. Uit die lijst volgt dus een waarde.
Deze waarde wil ik graag laten zoeken op de volgende bladen.
Als deze waarde hetzelfde is als op het totaalblad moet 1 cel van ieder blad dat deze waarde heeft worden opgeteld.

Bijvoorbeeld Cel B5 bevat op ieder blad de keuze informatie
op het totaalblad cel I13 moeten alle cellen I13 van de volgende bladen worden opgeteld wanneer op dit blad cel B5 gelijk is aan de waarde in cel B5 van het totaalblad.

Het lijkt simpel, dat dacht ik ook, maar ik doe waarschijnlijk iets fout.
Als volgt had ik mijn formule bedacht:

=SOM.ALS('blad1:blad20'!B5,B5,'blad1:blad20'!I13)

Wie helpt mij?
 
Bedankt voor je snelle reaktie. Ik ga vanavond thuis even dat zip-bestandje bekijken. Op mijn werk kan ik dan niet openen.

Mocht het helpen: ik krijg een #waarde als foutmelding.
Inmiddels alle zoekcodes op "getal" gezet, maar het helpt niet.
 
Zie de VBA code op het einde van die topic die ik geschreven heb.
 
Zie ook hier bij Function SumIf3D en de uitleg die erboven staat. Dit is code van zeer goede makelij.

Wigi
 
Beste allemaal,

Sorry, maar ik krijg het allemaal niet voor elkaar.
Hoe moet ik die VBA module erin plaatsen dan?

Bijgaand heb ik een voorbeeld bijgevoegd, misschien dat zo duidelijk wordt wat ik zoek.
vr.gr.
Lauren
 

Bijlagen

  • voorbeeld help mij.zip
    2,3 KB · Weergaven: 22
Ga eerst naar VBE met Alt-F11. Doe Invoegen > Module. Plak de code voor SumIf3D en Parse3D op de pagina die ik aanwees. Keer terug naar Excel met Alt-Q.

Dit is dan de formule die je moet gebruiken:

=SumIf3D("1:6!B1";"="&B1;B3)

Wigi
 
Beste Wigi,

Precies gedaan zoals je schreef. De functie niet gedefinieerd geeft excel als foutmelding.
Kan het zijn dat ik een te lage versie heb?

groet,
Lauren
 
Dan heb je niet alle code geplakt en/of niet op de juiste plaats.
 
Hoi, daar ben ik weer.

De functie had ik inderdaad niet op de juiste plaats geplakt, ik was gelijk naar mijn "echte" sheet gegaan, maar ik moet natuurlijk even in het voorbeeld blijven.

Het ziet er nu iets beter uit. Maar als de formule is ingevuld, krijg ik een #waarde en hij gaat gelijk terug naar Visual basics en geeft daar aan dat er een compileerfout is en dat de sub of function niet gedefinieerd is. Het bovenste deel is dan geel.
Onderstaande heb ik geplakt. Wat gaat er fout?


Function SumIf3D(Range3D As String, Criteria As String, _
Optional Sum_Range As Variant) As Variant

Dim sTestRange As String
Dim sSumRange As String
Dim Sheet1 As Integer
Dim Sheet2 As Integer
Dim n As Integer
Dim Sum As Double

Application.Volatile

If Parse3DRange(Application.Caller.Parent.Parent.Name, _
Range3D, Sheet1, Sheet2, sTestRange) = False Then
SumIf3D = CVErr(xlErrRef)
End If
 
Hij doet het!!!!
Super bedankt voor je hulp!!!!

Nog een klein vraagje:
Waarom was mijn oorspronkelijke oplossing fout? Kan dat niet over meerdere bladen?
 
Laatst bewerkt:
Lees de bladzijde waaraan ik refereerde, helemaal door. Er staat daar ergens een beperkt lijst met functies die je kan gebruiken in 3D bereiken. Som.als staat daar niet bij.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan