abonnement bol.com Unibet Coolblue
pi_135883582
quote:
0s.gif Op donderdag 23 januari 2014 22:03 schreef Janneke141 het volgende:
Je hebt dus al een manier gevonden om (via een ander blad of weet ik wat) de rijen 4 en 5 vanaf kolom J te vullen?

Dan kun je ervoor kiezen om in K5, M5 etc. een SOM.ALS(B5:B20;J5;week)+SOM.ALS(C5:C20;J5;week)+SOM.ALS(D5:D20;J5;week) te zetten. Het is een beetje lomp (twee van de drie sommen zijn 0) maar het werkt, omdat de codes voor hoofd-, x-, en sub-afdelingen toch allemaal verschillend zijn. Scheelt een hoop gerommel.

-edit-

Volgens mij hoeft dit trouwens niet eens, maar dat moet je even uitproberen.

Als je in K5 het volgende zet:
=SOM.ALS(B5:D20;J5;week) moet het volgens mij ook goedkomen, maar dat moet je even uitproberen.

Ook dit geprobeert, de meerdere som.als bij elkaar optellen werkt!
De =SOM.ALS(B5:D20;J5;week) werkt in mijn voorbeeld wel, maar in het bestand waarin ik het daadwerkelijk moet gebruiken werkt het niet, waarom? Geen idee.
Het zijn kleine verschillen, maar het zijn wel verschillen. Misschien dat het komt doordat er meer data staat (ongeveer 1000 rijen) maar dat lijkt me sterk, dat mag niet uitmaken.
Dit is dus ook niet op te lossen door iemand die het bestand niet heeft, dat snap ik.
Ik zit nu te twijfelen hoe nu verder te gaan, ga ik voor simpel maar lomp, of voor de "mooie" oplossing?
Tijd zal hier beslissend in zijn (het moet volgende week woensdag klaar zijn), maar ik ben wel blij dat er in ieder geval een oplossing is.
  vrijdag 24 januari 2014 @ 09:54:04 #127
346939 Janneke141
Green, green grass of home
pi_135883644
quote:
0s.gif Op vrijdag 24 januari 2014 09:51 schreef Arliator het volgende:
Ook dit geprobeert, de meerdere som.als bij elkaar optellen werkt!
Mooi!
quote:
De =SOM.ALS(B5:D20;J5;week) werkt in mijn voorbeeld wel, maar in het bestand waarin ik het daadwerkelijk moet gebruiken werkt het niet, waarom? Geen idee.
Krijg je een foutmelding of kloppen de getallen niet? Bij een foutmelding even backtracken, en als de getallen niet kloppen: bestaat de kans dat er in je lange lijst met gegevens toch ergens dubbele waarden zitten in twee verschillende kolommen?
Opinion is the medium between knowledge and ignorance (Plato)
pi_135887102
quote:
0s.gif Op vrijdag 24 januari 2014 09:54 schreef Janneke141 het volgende:

[..]

Mooi!

[..]

Krijg je een foutmelding of kloppen de getallen niet? Bij een foutmelding even backtracken, en als de getallen niet kloppen: bestaat de kans dat er in je lange lijst met gegevens toch ergens dubbele waarden zitten in twee verschillende kolommen?
De getallen kloppen niet. Het is denk ik wel goed om even te checken of er geen dubbele waarden zitten in de twee verschillende kolommen, het zou niet moeten kunnen, maar niks is met zekerheid te zeggen tot het nagekeken is.
Bedankt in ieder geval voor het meedenken!
pi_135893312
Ik zit al de hele dag op dit probleem, het zit zo:

Ik heb 2 kolommen met artikelcodes. In de linkerkolom komt iedere artikelcode maar 1x voor.
In de rechterkolom komen diezelfde artikelcodes soms wel meerdere keren voor maar met ieder andere gegevens in de kolommen daarachter. Nu wil ik die gegevens, achter de overeenkomende artikelcode in de linkerkolom zetten maar niet onder elkaar maar juist achter elkaar in 'n aparte kolom. Ik heb werkelijk geen idee hoe ik dit voor elkaar moet krijgen en met de hand doen is ook niet echt 'n pretje want het zijn totaal +-150.000 regels -_-" Alvast bedankt!
  vrijdag 24 januari 2014 @ 14:49:41 #130
62215 qu63
..de tijd drinkt..
pi_135893796
quote:
0s.gif Op vrijdag 24 januari 2014 14:36 schreef buishuis het volgende:
Ik zit al de hele dag op dit probleem, het zit zo:

Ik heb 2 kolommen met artikelcodes. In de linkerkolom komt iedere artikelcode maar 1x voor.
In de rechterkolom komen diezelfde artikelcodes soms wel meerdere keren voor maar met ieder andere gegevens in de kolommen daarachter. Nu wil ik die gegevens, achter de overeenkomende artikelcode in de linkerkolom zetten maar niet onder elkaar maar juist achter elkaar in 'n aparte kolom. Ik heb werkelijk geen idee hoe ik dit voor elkaar moet krijgen en met de hand doen is ook niet echt 'n pretje want het zijn totaal +-150.000 regels -_-" Alvast bedankt!
Dit zou moeten werken: http://office.microsoft.c(...)ues-HA001226038.aspx

Zorg er alleen voor dat de resultaten naast elkaar komen ipv onder elkaar :)
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_135895521
Thanks! Maar als ik deze formule gebruik geeft ie 'n foutmelding:
=SMALL(IF($A$1:$A$7=$A$10,ROW($A$1:$A$7)),ROW(1:1))

Ik gebruik de NL versie van Excel 2007 maar dit zou niets moeten uitmaken toch?
pi_135895675
Ik heb voor de duidelijkheid het voorbeeld even overgenomen om te kijken hoe het precies werkt
pi_135895957
quote:
12s.gif Op vrijdag 24 januari 2014 15:39 schreef buishuis het volgende:
Ik heb voor de duidelijkheid het voorbeeld even overgenomen om te kijken hoe het precies werkt
Probeer dit:

=kleinste(als($A$1:$A$7=$A$10;Rij($A$1:$A$7));Rij(1:1))

Het verschil is dat de vertaling en dat het scheidingsteken zijn aangepast
Oh.
pi_135895997
Nee ook niet. Had ik al eens geprobeerd maar hij geeft wederom de foutmelding #WAARDE!
pi_135896095
quote:
0s.gif Op vrijdag 24 januari 2014 15:48 schreef buishuis het volgende:
Nee ook niet. Had ik al eens geprobeerd maar hij geeft wederom de foutmelding #WAARDE!
Gebruik je wel Ctrl+shift+enter?. Het is namelijk een matrix.
Oh.
  vrijdag 24 januari 2014 @ 16:38:13 #136
62215 qu63
..de tijd drinkt..
pi_135897839
quote:
0s.gif Op vrijdag 24 januari 2014 15:48 schreef buishuis het volgende:
Nee ook niet. Had ik al eens geprobeerd maar hij geeft wederom de foutmelding #WAARDE!
Er staat wel iets in de genoemde cellen? En deze formule staat in B10?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_135898042
Ja hij doet het nu toch. Gebruikte de CTRL-SHIFT-ENTER combi fout. Thanks iig!
  vrijdag 24 januari 2014 @ 20:24:41 #138
93304 Orealo
Tsu Tsu Tsunami!!!
pi_135906187
Kan iemand mij deze code uitleggen?
Als output krijg je alle priemgetallen (tot 100) in je kolom A maar ik weet niet of het werkt zoals ik denk dat het werkt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sub Prime()
Range("A:A").ClearContents
Const zoekentot = 100
Dim filter(zoekentot) As Boolean

'priemcheck
For I = 2 To zoekentot
If filter(I) = False Then
Range("A" & I) = I
For J = I To zoekentot Step I
filter(J) = True
Next
End If
Next
End Sub

De array wordt gezet op 1 tot 100
We beginnen bij 2 (I). De boolean zou true moeten zijn (mi) want 2 zit in de reeks 1 tot 100. Hier snap ik het niet meer want als ik de code stap voor stap uitvoer geeft VBA aan dat de boolean false is.
Als toch false:
Vervolgens wordt 2 weggeschreven op A2 en worden alle vermenigvuldigbare (met I) cijfers uit de array op true gezet.
Als de const bereikt is wordt I gelijk aan 3 en begint het circus opnieuw.

Waar maak ik mijn denkfout?
pi_135907553
quote:
0s.gif Op vrijdag 24 januari 2014 09:04 schreef Arliator het volgende:

[..]

Snabbi,

Dank je wel, ik heb het net geopend, ik snap je gedachtegang, maar het is nog niet helemaal goed, want als ik in jouw voorbeeld LG invul in B2, dan zie ik alleen maar nulwaardes, dat is dus niet de bedoeling.
Maar, ik zal kijken of ik hiermee verder kan.
Het komt door de lege cel inderdaad bij de afdeling. Excel rekent daar met 0 ipv leeg. Als je onder afdeling ="" neer zet werkt het wel. Doe je het voor alle 'lege' cellen werkt het niet.

Persoonlijk vind ik het wel vreemd om wel een subafdeling te hebben, maar niet een afdeling. Als je geen 'lege waarden' toestaat en altijd een naam hebt, dan werkt het. Het is niet een hele galante oplossing vanwege die foutmeldingen en zeker die subafdelingen maakt het lastig om dit generiek op te zetten.

De enige echte oplossing in mijn ogen is gebruik te maken van QUERY functionaliteiten, maar dat gaat ver boven de kennis van je collega's. Ook zou je je data dan niet in de weken naast elkaar moeten zetten, maar alles gewoon netjes in een eigen regel.

[ Bericht 26% gewijzigd door snabbi op 24-01-2014 21:42:50 ]
pi_135908896
quote:
2s.gif Op vrijdag 24 januari 2014 20:24 schreef Orealo het volgende:
Kan iemand mij deze code uitleggen?
Als output krijg je alle priemgetallen (tot 100) in je kolom A maar ik weet niet of het werkt zoals ik denk dat het werkt.
[ code verwijderd ]

De array wordt gezet op 1 tot 100
We beginnen bij 2 (I). De boolean zou true moeten zijn (mi) want 2 zit in de reeks 1 tot 100. Hier snap ik het niet meer want als ik de code stap voor stap uitvoer geeft VBA aan dat de boolean false is.
Als toch false:
Vervolgens wordt 2 weggeschreven op A2 en worden alle vermenigvuldigbare (met I) cijfers uit de array op true gezet.
Als de const bereikt is wordt I gelijk aan 3 en begint het circus opnieuw.

Waar maak ik mijn denkfout?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Sub Prime()
'clearcontent dus de waarden verwijderen
Range("A:A").ClearContents
'zoekentot = 100
Const zoekentot = 100
'aanmaken van een array met grootte 100
'alle waarden in de array zijn False
Dim filter(zoekentot) As Boolean

'doorlopen van een loop van 2 tot 100
For I = 2 To zoekentot
'Bij de eerste keer dat de filter(2) wordt aangeroepen
'is filter(2) gelijk aan False. De if conditie is waar FALSE = FALSE is namelijk waar.
'dus de subcode wordt uitgevoerd.
 If filter(I) = False Then
'het resultaat dat 2 een priemgetal is weggeschreven wordt
'in je sheet verwerkt.
  Range("A" & I) = I
'let goed op dat hier STEP I staat. Dit houdt in met stapjes van I.  Deze loop wordt voor
'de eerste keer doorlopen met J = 2, 4, 6, 8, 10 etc
'Op deze wijze wordt filter(4) alvast op True gezet net als
'filter(6) filter(8) allemaal true worden.
  For J = I To zoekentot Step I
   filter(J) = True
'ik heb hier even J bij gezet zodat je weet dat de volgende J is, niet I
  Next J
 End If
'na de eerste keer doorlopen van de loop met I, wordt nu I = 3 doorlopen.
'filter(3) is nog false, dus hij gaat je loop met i=3 doorlopen in de if.
'nu wordt filter(6) die al True was weer opnieuw true, maar ook filter(9)
'wordt True.
Next I
End Sub
De hele clue is natuurlijk dat wanneer je i=4 doorloopt dat je direct bij je IF al krijgt dat hij hem niet nog een keer hoeft te doorlopen, want je filter(4) is TRUE.

Elke keer wanneer je een priemgetal doorvoert, zal je code "For J = I To zoekentot Step I" er voor zorgen dat je
1x<je priemgetal>
2x<je priemgetal>
3x<je priemgetal>
etc TRUE word en dus dat die getallen geen priem zijn.
  vrijdag 24 januari 2014 @ 21:29:34 #141
93304 Orealo
Tsu Tsu Tsunami!!!
pi_135909271
quote:
0s.gif Op vrijdag 24 januari 2014 21:21 schreef snabbi het volgende:

[..]
[ code verwijderd ]

De hele clue is natuurlijk dat wanneer je i=4 doorloopt dat je direct bij je IF al krijgt dat hij hem niet nog een keer hoeft te doorlopen, want je filter(4) is TRUE.

Elke keer wanneer je een priemgetal doorvoert, zal je code "For J = I To zoekentot Step I" er voor zorgen dat je
1x<je priemgetal>
2x<je priemgetal>
3x<je priemgetal>
etc TRUE word en dus dat die getallen geen priem zijn.
Wat een goede uitleg! Dankjewel!
Nog één vraag - waarom zijn alle waarden in de array False?
Of is dat gewoon een gegeven?
pi_135909421
quote:
2s.gif Op vrijdag 24 januari 2014 21:29 schreef Orealo het volgende:

[..]

Wat een goede uitleg! Dankjewel!
Nog één vraag - waarom zijn alle waarden in de array False?
Of is dat gewoon een gegeven?
Het is een keuze van de programmeertaal. Bij het aanmaken van je Boolean array zijn alle waarden 0. In programmeren is 0 gelijk aan False en 1 aan True. Ze hadden er voor kunnen kiezen om bij het aanmaken alles op 1 te zetten, maar het is 'gewoon' aanmaken is 0.
  vrijdag 24 januari 2014 @ 21:32:31 #143
93304 Orealo
Tsu Tsu Tsunami!!!
pi_135909459
quote:
0s.gif Op vrijdag 24 januari 2014 21:31 schreef snabbi het volgende:

[..]

Het is een keuze van de programmeertaal. Bij het aanmaken van je Boolean array zijn alle waarden 0. In programmeren is 0 gelijk aan False en 1 aan True. Ze hadden er voor kunnen kiezen om bij het aanmaken alles op 1 te zetten, maar het is 'gewoon' aanmaken is 0.
Helder. Thanks!
pi_135922251
Ik heb de draad weer opgepakt met het daadwerkelijke bestand, maar ik krijg de formule niet in mijn eigen werkblad verwerkt. Ik wil graag in de kolom waar nu de formule staat het gezochte nummer en als ik 'm naar rechts/links sleep de andere gevonden.

1http://speedy.sh/Pq7yv/TEST.xlsx
pi_135922539
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Recept artikelcode    Artikelcode                Artikelcode
00021.14629    CC.2467004        CC.2467003        00021.14629
00021.46632    CC.2467003        EE.6959500        00021.14806
00021.1537    DD.6959515        #GETAL!        00021.15297
00021.14629    EE.6959502        #GETAL!        00021.1536
00021.53268    EE.6959500        #GETAL!        00021.1537
00021.60811    FF.18132401        #GETAL!        00021.15521
00021.60813    FF.A7202101        #GETAL!        00021.15522
00021.16079    BB.90210032        #GETAL!        00021.15523
00021.68019    BB.90210033        #GETAL!        00021.15960
00021.16079    GG.100066.005        #GETAL!        00021.15961
00021.15960    AA.9002104        #GETAL!        00021.16079

Gebruikte formule: =INDEX($A$2:$B$13000;KLEINSTE(ALS($A$2:$A$13000=$F$2;RIJ($A$2:$A$13000));RIJ(3:3));2)
pi_135923470
Heb 't gevonden! Toch bedankt :)

1=ALS(ISFOUT(INDEX($A$1:$B$13000;KLEINSTE(ALS($A$1:$A$13000=L3;RIJ($A$1:$A$13000));RIJ($1:$1));2));"";INDEX($A$1:$B$13000;KLEINSTE(ALS($A$1:$A$13000=L3;RIJ($A$1:$A$13000));RIJ($1:$1));2))
pi_136009657
quote:
0s.gif Op vrijdag 24 januari 2014 20:56 schreef snabbi het volgende:

[..]

Het komt door de lege cel inderdaad bij de afdeling. Excel rekent daar met 0 ipv leeg. Als je onder afdeling ="" neer zet werkt het wel. Doe je het voor alle 'lege' cellen werkt het niet.

Persoonlijk vind ik het wel vreemd om wel een subafdeling te hebben, maar niet een afdeling. Als je geen 'lege waarden' toestaat en altijd een naam hebt, dan werkt het. Het is niet een hele galante oplossing vanwege die foutmeldingen en zeker die subafdelingen maakt het lastig om dit generiek op te zetten.

De enige echte oplossing in mijn ogen is gebruik te maken van QUERY functionaliteiten, maar dat gaat ver boven de kennis van je collega's. Ook zou je je data dan niet in de weken naast elkaar moeten zetten, maar alles gewoon netjes in een eigen regel.

Dank je wel, ik was het weekend weg, dus kan nu pas antwoorden.
Ik snap dat het er onlogisch uitziet, maar ik heb deze constructie ook niet verzonnen.
De foutmeldingen zou ik weg moeten kunnen halen met isfout.
In ieder geval reuze bedankt voor je inspanningen, je hebt er volgens mij best wel wat tijd ingestopt.
Waardeer ik enorm.

Oh ja, de QUERY functionaliteit ga ik zeker niet gebruiken, anders krijg ik iedere keer vragen van de gebruikers, zit ik niet echt op te wachten.
  maandag 27 januari 2014 @ 17:27:46 #148
100297 teamlead
Nu met Napoleon complex
pi_136013336
Ik loop even vast op een conditional formatting-dingetje..

In een sheet heb ik een overzichtje nodig van de ontwikkeling van bepaalde cijfers. Omdat er in een cyclus van 4 weken slechts 1 focuspunt is, en we graag willen dat iedereen het op een uniforme wijze invult, heb ik een pull-down menu in de eerste cell geplaatst met de mogelijke opties.
Gedurende de cyclus van 4 weken, moet wekelijks de progressie gemeten worden. Wat ik graag wil is dat de conditional formatting zo werkt dat een verbetering in de cijfers voor oranje zorgt en de cell groen kleurt als het target behaald is.

Probleem daarbij is dat per optie uit het pulldown menu, het target varieert..... en dus de voorwaarde voor de conditional formatting ook zou moeten veranderen. Kan dat uberhaupt wel :?

Verhelderend screenshotje:

If you wish to be a success in the world, promise everything, deliver nothing.
Nothing is more difficult, and therefore more precious, than to be able to decide.
Victory belongs to the most persevering
  maandag 27 januari 2014 @ 17:30:40 #149
346939 Janneke141
Green, green grass of home
pi_136013456
Je kunt voorwaardelijke opmaak cellen met elkaar laten vergelijken. Dan moet je bij de criteria in plaats van een vaste waarde, een formule invoeren.
Opinion is the medium between knowledge and ignorance (Plato)
  maandag 27 januari 2014 @ 17:39:51 #150
100297 teamlead
Nu met Napoleon complex
pi_136013833
Daarmee is een deel van het probleem inderdaad ondervangen, maar kan ik nog niet de cel groen laten kleuren als het betreffende target gehaald is?
If you wish to be a success in the world, promise everything, deliver nothing.
Nothing is more difficult, and therefore more precious, than to be able to decide.
Victory belongs to the most persevering
abonnement bol.com Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')