Avatar billede bjarnehansen Seniormester
16. august 2011 - 10:54 Der er 24 kommentarer og
1 løsning

finde den sidste beholdning i tanken

hej
jeg sidder og roder med et ark til beregning af olieforbruget i et villa fyr.
Arket er bygget op på følgende måde i A har jeg ugenr i B datoen i D timer fyret har kørt i E forbruget siden sidste i F beholdning i tanken i G påfyldt, C springer den over da jeg har nogle flettede fletter.
De starter i A8 osv.
i F45 har jeg så hvormeget der kan fyldes på, mit problem er kan man ikke få den til at tage den sidste beholdning i F8 til F42 og trække det fra tank størrelsen i B3, der aflæse hver uge.

Håber en har svaret.
se eksp. her
http://gupl.dk/64081/
Avatar billede supertekst Ekspert
16. august 2011 - 11:03 #1
Dvs F18 i det viste eksempel?
Avatar billede bjarnehansen Seniormester
16. august 2011 - 11:09 #2
ja men i næste uge er det så F19
Avatar billede bjarnehansen Seniormester
16. august 2011 - 11:14 #3
De udregninger der er i I er kun til test dem vil jeg fjerne igen så der kun er tallet i F45 der viser hvormeget der kan fyldes på.
Avatar billede supertekst Ekspert
16. august 2011 - 11:23 #4
Ja naturligvis - kunne det være en lille stump VBA, der beregner det ønskede, når du indtaster Timer?
Avatar billede natkatten Mester
16. august 2011 - 11:32 #5
Du behøver ikke VBA her, idet du kan benytte følgende matriksformel:

{=B3-INDIREKTE("F"&MAKS(HVIS(F7:F42<>"";RÆKKE(7:42))))}

Bemærk: Tuborgparanteserne skal ikke skrives, men fremkommer når du trykker <CTRL>+<SHIFT>+<Enter>

Du kan naturligvis tilrette det celleområde, som seneste indtastning skal hentes fra.
Avatar billede bjarnehansen Seniormester
16. august 2011 - 11:37 #6
nu har jeg ikke arbejdet med VBA før er det nemt at ændre i ? her tænker jeg på, hvis jeg nu ændre det til daglig eller månedlig aflæsning istedet for ?
Avatar billede bjarnehansen Seniormester
16. august 2011 - 11:43 #7
Til natkatten for en fejl "forkert datatype" har sat formel i F45
Avatar billede supertekst Ekspert
16. august 2011 - 11:45 #8
Højreklik på arket / Vis programkode / Indsæt følgende kode

Private Sub Worksheet_Change(ByVal Target As Range)
Rem Ændres indholdet i kolonne D og rækkenr er mellem 8 og 42 incl.
    If Target.Column = 4 And Target.Row >= 8 And Target.Row <= 42 Then
Rem korriger formel i F45
        Range("F45").Formula = "=B3-F" & CStr(Target.Row)
    End If
End Sub
Avatar billede natkatten Mester
16. august 2011 - 11:50 #9
Ad #7: Det virker på det eksempel, som du har uploadet?
Avatar billede natkatten Mester
16. august 2011 - 11:51 #10
Tilføjelse: Er det ikke i F45 at den matriksformel, som jeg har lavet, skal indsættes?
Avatar billede bjarnehansen Seniormester
16. august 2011 - 12:05 #11
Ad #10: jo men for denne fejl #værdi
Avatar billede natkatten Mester
16. august 2011 - 12:11 #12
Har du husket at trykke <CTRL>+<SHIFT>+<Enter> når formlen er indtastet? I modsat fald kommer fejlen.
Avatar billede bjarnehansen Seniormester
16. august 2011 - 12:20 #13
ups det havde jeg ikke lige bemærket men nu virker det
Avatar billede vejmand Juniormester
16. august 2011 - 12:21 #14
Kopier formlen uden {}, altså:
=B3-INDIREKTE("F"&MAKS(HVIS(F7:F42<>"";RÆKKE(7:42))))
Stil dig i F45
<CTRL>+<v>
<CTRL>+<SHIFT>+<Enter>
Avatar billede natkatten Mester
16. august 2011 - 12:40 #15
For øvrigt vil denne "normale" formel også fungere:

=B3-INDEKS(F7:F42;SAMMENLIGN(1800;F7:F42))

Bemærk, at jeg har indsat tallet 1800 fordi det er maksimum for din tank.
Hvis man i en anden situation har brug for et større interval, så skal dette tal blot forhøjes (f.eks. til det maksimale tal, som Excel kan foretage beregninger med, som i 2010 er: 9,99999999999999E+64)!
Avatar billede bjarnehansen Seniormester
16. august 2011 - 13:38 #16
Ad: #8 har fået kopieret VBA ind i arket men der sker ikke rigtigt noget syntes jeg ?
de andre 2 forslag virker men nu kunne jeg godt tænke at få den med VBA også til at virke
Avatar billede bjarnehansen Seniormester
16. august 2011 - 13:46 #17
Til natkatten send et svar da er dit forslag jeg har valgt at bruge..
Avatar billede supertekst Ekspert
16. august 2011 - 14:11 #18
#16 - har du muliggjort anvendelse af makroer?
Avatar billede natkatten Mester
16. august 2011 - 14:24 #19
Her er mit svar - jeg anvender selv matriksformlen i flere af de regneark, som jeg bruger privat (a la dit til registrering og styring af olieforbruget).
Avatar billede bjarnehansen Seniormester
16. august 2011 - 14:39 #20
#18 det skulle jeg mene men prøv denne fil
http://gupl.dk/64093/
Avatar billede supertekst Ekspert
16. august 2011 - 15:59 #21
Er afprøvet - virker som den skal - men jeg tror, at det der mangler, er indstillingen i selve Excel: Excel-indstillinger / Sikkerhedscenter / Indstillinger for sikkerhedscenter / Indstillinger for makro

Det er ikke nok at gemme i en xlsm-fil.
Avatar billede bjarnehansen Seniormester
16. august 2011 - 17:04 #22
Har prøvet at aktivere makroer i sikkerhedcenteret men det hjalp ikke
Avatar billede supertekst Ekspert
16. august 2011 - 17:30 #23
Når jeg indtaster værdi i Timer i den aktuelle række - så beregnes "Der kan påfyldes" i F63
Avatar billede bjarnehansen Seniormester
16. august 2011 - 17:48 #24
ok nu virker det også her den skrev bare ikke noget før jeg også tastede nogle timer ind det havde jeg ikke lige set så har jeg også lært noget idag .....
Avatar billede supertekst Ekspert
16. august 2011 - 17:53 #25
Fint nok..
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester