[excel 2003] SUM en meerdere criteria (meer dan 10x)

Pagina: 1
Acties:

  • matjepet
  • Registratie: April 2003
  • Laatst online: 24-07 00:27
Hallo,

Ik heb een probleempje met het verwerken van data in Excel.
De data gaat over leidingen met een bepaalde diameter, bouwjaar en lengte. Deze gegevens zijn doormiddel van kolommen in een sheet weergegeven. Nu moet ik de data rangschikken naar jaartal (lopend van 1980 t/m 2005) en weergeven wat de totale lengtes van de leidingen zijn van een bepaalde diameter (lopend van DN600 t/m DN40) in dat jaartal. Dit moet ik in een overzicht weergeven.

Een voorbeeld van de ruwe data ziet er als volgt uit:

lengtediameterbouwjaar
mDN
237DN6001982
597DN6001982
510DN6001982
2DN3001981
1DN2001981
143DN3001982
1DN2001982
611DN3002003
1DN2001981
195DN3001981
1DN2001981
1DN2001981
493DN2501983
118DN2501983
97DN2501983
103DN2501983
115DN2501983
1DN2001983


De complete lijst is 10x zo groot, dus zoek ik naar een handige methode om dit te verwerken.

De data moet alsvolgt in een overzicht worden weergegeven
jaartallengtediameter
198015DN600
198042DN450
1980424DN300
1980122DN250
1980809DN200
198018DN150
198023DN125
1980268DN100
198028DN80
198079DN65
19800DN50
19800DN40
19811158DN600
19811874DN450
19811394DN300
1981211DN250
1981513DN200
1981749DN150
1981577DN125
1981673DN100
1981345DN80
1981213DN65
19810DN50
19810DN40

(in dit voorbeeld komt de data van beide tabellen niet overeen)

ALs functie gebruik ik op dit moment:
{ =SUM(($G$196:$G$656=D9)*($F$196:$F$656=G9)*$D$196:$D$656)}
Zoals je ziet maak ik gebruik van arrays. De functie zoekt in de kolom G196-G656 naar rijen die het gegeven van D9 bevat, daarnaast zoekt ie in de kolom F196-F656 naar rijen die het gegeven van G9 bevat. Dan telt ie alle rijen waarbij het voorstaande allebei klopt op. Dit werkt aardig, maar niet helemaal goed, want voor de kleinste diameters DN50 en DN40 werkt dit niet. Ik kan niet achterhalen waaraan dit ligt.

Het lijkt erop dat de functie die ik gebruik slechts 10maal kan gebruiken (DN600 - DN65). Kan iemand dit bevestigen? Weet iemand een oplossing of een andere betere methode om deze data te rangschikken.

Alvast bedankt.

Groeten Matthias

Verwijderd

Zoek eens in de help naar pivot table (draaitabel in het nederlands). Precies wat je zoekt om overzichten te maken waarin gegevens bij elkaar geharkt worden op basis van bepaalde criteria.

Een paar engelse URL's met uitleg over pivot tables:
http://www.cpearson.com/excel/pivots.htm
http://www.homeandlearn.co.uk/ME/mes9p4.html

Verwijderd

Verwijderd schreef op dinsdag 12 december 2006 @ 01:52:
Zoek eens in de help naar pivot table (draaitabel in het nederlands). Precies wat je zoekt om overzichten te maken waarin gegevens bij elkaar geharkt worden op basis van bepaalde criteria.
Als ik het zo lees moet hij niet bij elkaar harken maar alleen rangschikken.
matjepet schreef op dinsdag 12 december 2006 @ 00:14:
Het lijkt erop dat de functie die ik gebruik slechts 10maal kan gebruiken (DN600 - DN65). Kan iemand dit bevestigen?
Nee, ik gebruik sheets met 1000en array-formules.

Verwijderd

Even over het probleem: het maakt je dus niet uit welke diameter op welke regel staat, alleen dat de jaren gerangschikt zijn en de lengtes opgeteld?

Maak dan gewoon een tabel met in kolom D de jaren en in E alle mogelijke diameters. Dus als er 10 diameters zijn dan D1 t/m D010 1980 en E1 t/m E10 de diameters (ik neem aan dat de ongesorteerde data in kolom A t/m C staat).

Dan in F1:

{=sum(if($A$1:$A$1000=D1,if($B$1:$B$1000=E1,$C$1:$C$1000)))}