19. januar 2015 - 14:22Der er
11 kommentarer og 1 løsning
Count antal sammenhængende perioder
Et regneark består af ugenummer 1-52 i kolonne B - BA
For hver række kan der i de pågældende 52 celler stå væedien 0 - 7.
Jeg har behov for en regneregel som for alle 52 uger tæller hvor mange gange der er sammenhængende uger hvor summer af det der står i de pågældende er, 21 eller derover.
Jeg er ikke helt sikker på, at jeg forstår problemstillingen...
Men hvis vi siger, at række 1 er uger og række 2 er værdierne. Dvs. at der står "1" i B1 og en værdi mellem 0-7 i B2, så kan du prøve at indsætte følgende formler og kopiere ud til højre:
Celle C3 =IF(C2=B2;C2+B3+B2;0) Celle C4 =IF(AND(D3=0;C3>21);1;0)
Summen af række 4 vil så være antallet af gange...
Hmm, det bliver for mig at se noget af en matriksformel som skal stykkes sammen (eller noget VBA). Den skal jo lede efter "skilletegnet" som er værdien 0 og så summere områderne mellem nulværdierne mhp. at afgøre om summen af disse er >=21.
Jeg har ikke umiddelbart et forslag. Hvis det "blot" drejede sig om at finde f.eks. antallet af "sammenhængende" ens tal i rækken (i eksemplet her om 7 står 3 eller flere gange i rækkefølge) ville denne matriksformel kunne anvendes:
Const maxTal = 7 Dim antalRæk As Integer, ugeSum As Integer, antalUger, cc Private Sub optælPerioder21() antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
For ræk = 2 To antalRæk For Each cc In Range("B" & ræk & ":BA" & ræk).Cells If cc = 7 Then ugeSum = ugeSum + 7 Else If ugeSum >= 21 Then antalUger = antalUger + 1 End If ugeSum = 0 End If Next Range("BB" & ræk) = antalUger ugeSum = 0 antalUger = 0 Next ræk End Sub
Det er en matriksformel (også kaldet for en CSE-formel). Når du har indtastet den, så skal du trykke på CTRL-SHIFT-ENTER, således at der kommer "tuborgparenteser" omkring formlen. Disse skal altså ikke indtastes (dette virker ikke).
Matriksformler arbejder, som navnet antyder, på matricer/områder og udvider dermed Excels "almindelige" formler betydeligt. Udgør i nogle forbindelser et alternativ til programmering i VBA.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.