14. februar 2009 - 17:43Der er
11 kommentarer og 1 løsning
Automatisering af formel i Excel
Hejsa
Jeg har behov for at lave et regneark, hvor der skal foretages nogle ret simple udregninger afhængig af, hvad værdien er i et bestemte celler.
Se f.eks. her:
Navn Beløb GNS MAX MIN Spredn. Spredn. Antal a 10,00 a 20,00 a 30,00 a 40,00 a 50,00 a 60,00 a 70,00 a 80,00 a 90,00 50,00 90,00 10,00 80,00 800,0% 9 b c d e f g h i j 30,00 j 40,00 j 50,00 j 60,00 j 70,00 50,00 70,00 30,00 40,00 133,3% 5 k l m
I række 10 vil jeg gerne have en formel, der finder middelværdien af b2:b10, fordi værdien af a2:a10 er den samme.
I række 23 vil jeg gerne have en formel, der middelværdien af b19:b23, fordi værdien af a19:a23 er den samme.
Udregningen skal kun ske i den sidste række for alle steder, hvor der er flere felter med samme værdi i a-kolonnen. Hvis der kun er en et felt med samme værdi a-kolonnen, så skal der ikke ske en sammentælling.
Det er et regneark med mange hundrede linje, hvor A-kolonnen er sorteret, så rækker med ens værdier kommer lige efter hinanden, som vist ovenfor.
P.t. kopierer jeg manuelt en formel til den sidste række i hver forekomst og retter formlerne, men der er en betydelig risiko for taste fejl.
Kan man på en smart måde automatisere det eller dele af det?
Tak for det. Jeg kan se, at det er noget i den stil, men jeg skal nok have lidt mere hjælp for at løse det. Kan man f.eks. lave en formel med SUBTOTAL, der gør det? Jeg ville gerne have regnearket så automatisk som muligt.
OK. Jeg kan ikke helt finde ud af det. Den indsætter nogle nye rækker, men jeg ønsker blot en formel i en celle til højre for kolonnen med den sidste af en given værdi, og jeg ønsker tomme felter, der hvor der kun et felt i a-kolonnen med en given værdi.
Hvis du ønsker det som du anfører, altså med beregningen til højre for kolonnen i stedet for under de relevante rækker og ingenting der, hvor der inghenting står i B-kolonnen, er der nok kun den manuelle løsning, som du allrede bruger, der virker.
Nope. Only Hard work. Med mindre nye rækker altid indsættes inden i de eksisterende områder. Har du fx =MIDDEL(A1:A10) vil en ny række indsat mellem A1 og A10 automatisk opdatere formlen, så den kommer til at hedde A1:A11. Indsættes en række efter A10, vil den ikke gøre det.
Det er muligt, at du kan gøre noget ved hjælp af makroer, men det kræver en mere detaljeret viden om, hvor mange forskellige værdier, der kan forekomme i A-kolonnen.
Hvis jeg anfører antallet af rækker manuel i et felt, kan man så lave en formel, der regner =MIDDEL((A10-x):A10), hvor x er det antal række, der skal tælles "baglæns"??
Har du prøvet med en hjælpe kolonne samt formlen forskyd? Det forudsættes at du har en overskrift i række 1 , dit navn i kolonne A og din værdi i kolonne B Eks I C2 indsættes (din hjælpe kolonne) formlen HVIS(OG(A1=A2;A3<>A2);-1*(TÆL.HVIS(A:A;A2));"") I D2 indsættes (din middel kolonne) formlen HVIS(C2<>"";MIDDEL(FORSKYDNING(B2;0;0;C2;1));"") I E2 din næste beregninger idet du udskifter middel med din beregning osv med alle dine beregninger Disse formler i række 2 kopier du ned ( 200 rækker ) og så burde det virke automatisk Mvh oleelo
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.