Hi,
Ter inleiding:
Ik draai diverse evenementen. Hier worden kassa's gebruikt, de verdeling van de kassa's is bij ieder evenement anders. Ik wil graag op een totaaloverzicht per afdeling zien wat de totaalomzet van de kassa's van die afdeling is. Dat kan dus het ene evenement kassa 1-10 zijn en het andere evenement kassa 3-9 (bijvoorbeeld).
Nu heb ik een formule gevonden:
=SOMSHEETS($C10;$D10;E$5)
Waarbij $C10 in dit geval staat voor het eerste kassanummer in de reeks, $D10 voor het laatste kassanummer in de reeks en E$5 voor de cel waarin de omzetgegevens staan op de betreffende tabbladen. (ieder tabblad vertegenwoordigd een kassa, en op elk tabblad is het dezelfde cel waar de gegevens uit gehaald moeten worden).
Om deze formule te laten werken heb ik in vba moeten toevoegen:
Public Function SomSheets(sh1 As String, sh2 As String, cl As String) As Double
Dim a As Integer, x As Integer, y As Integer
x = Sheets(sh1).Index
y = Sheets(sh2).Index
SomSheets = 0
For a = x To y
SomSheets = Sheets(a).Range(cl).Value + SomSheets
Next
End Function
Het probleem is, dat de gegevens alleen ververst worden, wanneer ik in 1 van de cellen van de formule ga staan en enter. De gegevens worden dus niet automatisch ingevuld.
Heeft iemand een oplossing voor mij? Wellicht een formule die beter werkt?
Ter inleiding:
Ik draai diverse evenementen. Hier worden kassa's gebruikt, de verdeling van de kassa's is bij ieder evenement anders. Ik wil graag op een totaaloverzicht per afdeling zien wat de totaalomzet van de kassa's van die afdeling is. Dat kan dus het ene evenement kassa 1-10 zijn en het andere evenement kassa 3-9 (bijvoorbeeld).
Nu heb ik een formule gevonden:
=SOMSHEETS($C10;$D10;E$5)
Waarbij $C10 in dit geval staat voor het eerste kassanummer in de reeks, $D10 voor het laatste kassanummer in de reeks en E$5 voor de cel waarin de omzetgegevens staan op de betreffende tabbladen. (ieder tabblad vertegenwoordigd een kassa, en op elk tabblad is het dezelfde cel waar de gegevens uit gehaald moeten worden).
Om deze formule te laten werken heb ik in vba moeten toevoegen:
Public Function SomSheets(sh1 As String, sh2 As String, cl As String) As Double
Dim a As Integer, x As Integer, y As Integer
x = Sheets(sh1).Index
y = Sheets(sh2).Index
SomSheets = 0
For a = x To y
SomSheets = Sheets(a).Range(cl).Value + SomSheets
Next
End Function
Het probleem is, dat de gegevens alleen ververst worden, wanneer ik in 1 van de cellen van de formule ga staan en enter. De gegevens worden dus niet automatisch ingevuld.
Heeft iemand een oplossing voor mij? Wellicht een formule die beter werkt?