Jeg mener ikke, at du kan gøre det på tabelniveau.
Men i en forespørgsel kan du gruppere (Totaler) på hver bruger og indsætte et udtryk der beregner gennemsnittet. Jeg mener der er en funktion der guider dig igennem. Brug querybuilderen.
Ja, det er rigtig, men der skal kun beregnes for hvert 8. resultat. Den model du beskriver laver, så vidt jeg ved, kun et gennemsnit for alle resultater for denne bruger.
Du kan da 'sagtens' lave en kode der gør det og smider det i et felt i tabellen. Men det vil blive lidt tungt hvis der er mange records.
Du laver en koder der looper din tabel med brugere og for hver af disse brugere kalder du en funktion der løber data igennem og for hver 8. record gemmer den gennemsnit i et felt.
Men det er ikke uden fælder: Rækkefølge - hvordan skal records løbes igennem. Datostempel? Antal ikke deleligt med 8 - hvad nu hvis der er 83 records? O.S.V.
Hvis du nu vender spørgsmålet om, og dermed forklarer hvorfor hver ottende er specielt? Så har du vel svaret på hvilken faktor der bestemmer hvilke tal skal indgå i middeltalsberegningen? (de otte tal har noget tilfældes, hvad?)
Med tabelniveau mener jeg at beregningen skal foretages i tabellen og ikke i en forespørgelse, formular eller rapport.
Der er ikke tale om ret mange records, ca. 5-600 om året. Bliver der for mange kan de ældste arkiveres i en historisk database.
Om antallet er ulige burde være lige gyldigt. Jeg havde forestillet mig at beregningen kun skulle foretages når der var 8 nye records, altså en beregning for hver nye 8 records som der ikke har været lavet en beregning på tidligere.
Dit indlæg er udmærket, men det er teori. Det var den praktiske løsning jeg var ude efter, koden!
Hej Sifuentes
Jeg forstår ikke rigtig din kommentar. Hvad mener du med "hvorfor hver 8 specielt"? Hvis du mener at det ville være nemmere at det var hver 7. eller hver 9. så er det ikke det som opgaven lyder på, det skal være hver 8. Hvorfor det er sådan har ingen betydning for løsningen. Ikke fordi det er en hemmelighed, men det vil ikke være rimeligt at bruge plads på det her.
Nu venter jeg til i morgen aften, er der ikke kommet et brugbart svar må jeg indse at det ikke er her resurserne er og så lukker jeg spørgsmålet. Tak for indsatsen.
Du har svaret på dit eget spørgsmål, netop at der ikke eksistere korrelation mellem din udvalgte data, om talsættet udgøres af 7, 9 2156, eller 41 tal er komplet uinteressant i denne sammenhæng. Der som ingen korrelation eksistere kan talsættene ikke udrages, og dermed kan middeltal ikke beregnes.
Hvis du spørger om et givent recordset kan nummereres stigende eller faldende, er svaret ja, men dersom en enkelt post i recordsettets data ændres/tilføjes/slettes, ændres nummereringen tilsvarende, og nummereringen vil derfor ikke udgøre statiske data, men derimod dynamiske. (efter en nummerering kan udvælgelse ske evt. med heltalsdivision og modulus som kriterie)
Der er ikke noget der kendetegner de data som der skal beregnes på, de er helt tilfældige og vilkårlige. Dog kan man sige at det er et tal mellem 1 og 300.
Men jeg har tænk på at man kunne oprette et felt mere som kommer til at indeholde tallet 1 når den første records oprettes. Når record to oprettes tager man værdien i det forgående felt og lægger en til. Sådan bliver man ved ind til der står otte i feltet. Når records ni oprettes begynder man forfra med et. På den måde ville man have en værdi hvor man kunne finde de 8 felter der skal laves en gennemsnitsberegning på.
Så burde jeg kunne lave beregningen som en rapport.
Tabellen holdes sorteret på et dato-tids felt.
Jeg fik ideen ud fra din kommentar så hvis du sender et svar så får du de 30 point
Jeg er med på det skal laves i en formular, men jeg tror at jeg beslutter mig for at lave et VB program som kommer til at køre som front end og så laver jeg beregningerne i dette program.
Tak for hjælpen.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.