Avatar billede jhavn Nybegynder
31. januar 2001 - 20:18 Der er 18 kommentarer og
4 løsninger

hjælp til regneark

jeg skal lave en udregning ang. DIS og skal bruge en tabel som er
beløb        gangefaktor   
0 - 2937          1,00       
2937 - 14881      0,53
14882 - 24,322    0,585
24323 >>>>>        0.295
hvis beløbet er 15373 skal man først regne den første faktor ud derefter nummer 2 og så trække 14882 fra 15373 og gange resutatet med faktoren og ligge alle tal sammen

jeg vil give 200 point for den rigtige løsning
Avatar billede james_t_dk Juniormester
31. januar 2001 - 20:32 #1
det her virker for de første 2 intervaller i staroffice.

=HVIS(A2>2937;A2*0,53;A2*1)

Hvilket regneark bruger du?
Avatar billede james_t_dk Juniormester
31. januar 2001 - 20:51 #2
Skal det forståes sådan at hvis tallet er 15000:

2937 * 1 = x
15000 - 2937 * 0,53 = y
15000 - 14881 * 0,585 = z

Resultatet bliver så x+y+z

Eller er jeg helt galt på den.
Kan du eventuelt opstille en formel eller udregne en eksempel værdi en hvert interval.
Avatar billede hoejrup Nybegynder
31. januar 2001 - 21:19 #3
IF(Belob>2937,2937,IF(Belob<2938,Belob*1,0))
IF(Belob>14881,11944*,53,IF(Belob<14881,(Belob-2937)*,53))
IF(Belob>24322,9441*,585,IF(Belob<24322,(Belob-14881)*,585))
IF(Belob>24322,Belob*,295)

Hver eneste if sætning skal ind i hver sin celle og summeres op til sidst.

/Per
Avatar billede hoejrup Nybegynder
31. januar 2001 - 21:23 #4
Rettelse

IF(Belob>2937,2937,IF(Belob<2938,Belob*1,0))
IF(Belob>14881,11944*,53,IF(Belob<14881,(Belob-2937)*,53,0))
IF(Belob>24322,9441*,585,IF(Belob<24322,(Belob-14881)*,585,0))
IF(Belob>24322,Belob*,295)

Hver eneste if sætning skal ind i hver sin celle og summeres op til sidst.

/Per
Avatar billede james_t_dk Juniormester
31. januar 2001 - 21:31 #5
Ja nemlig!

Men kan man ikke lave dem i et felt, her får man jo fire felter der så skal summeres.

Kan man ikke tage din kode og sætte den direkte ind i en sum():

SUM (
IF(Belob>2937,2937,IF(Belob<2938,Belob*1,0));
IF(Belob>14881,11944*,53,IF(Belob<14881,(Belob-2937)*,53));
IF(Belob>24322,9441*,585,IF(Belob<24322,(Belob-14881)*,585));
IF(Belob>24322,Belob*,295)
    )

Om det skal være ; eller , kan man vel finde ud af.

HM, fusker med min StarCalc
31. januar 2001 - 22:06 #6
Hejsa

Hvis det er formel, som skal bruges igen og igen i regnearket, så ville jeg nok vælge at lave min egen funktion i VBA, som f.eks. denne.

Function MyInterval(MyValue As Single) As Single
    Select Case MyValue
        Case Is < 2937
            MyInterval = MyValue * 1
        Case 2937 To 14881
            MyInterval = MyValue * 0.53
        Case 14882 To 24322
            MyInterval = MyValue * 0.585
        Case Else
            MyInterval = MyValue * 0.295
    End Select
End Function

=MyInterval(A2) -gør jobbet

Mvh
Flemming
Avatar billede hoejrup Nybegynder
31. januar 2001 - 22:08 #7
Ok, men jeg har lavet strengene i Excel.

/per
Avatar billede hoejrup Nybegynder
31. januar 2001 - 22:27 #8
Det kan være at den skal se sådan ud i StarCalc

SUM(
IF(Belob>2937;2937;IF(Belob<2938,Belob*1,0)) +
IF(Belob>14881;11944*,53;IF(Belob<14881,(Belob-2937)*,53)) +
IF(Belob>24322;9441*,585;IF(Belob<24322,(Belob-14881)*,585)) +
IF(Belob>24322;Belob*,295))

/per
Avatar billede hoejrup Nybegynder
31. januar 2001 - 22:28 #9
Ups

SUM(
IF(Belob>2937;2937;IF(Belob<2938,Belob*1,0)) +
IF(Belob>14881;11944*,53;IF(Belob<14881;(Belob-2937)*,53)) +
IF(Belob>24322;9441*,585;IF(Belob<24322;(Belob-14881)*,585)) +
IF(Belob>24322;Belob*,295))

/per
31. januar 2001 - 22:32 #10
Ja, det er noget af en smøre - god fornøjelse.
Avatar billede james_t_dk Juniormester
01. februar 2001 - 07:30 #11
StarCalc og Excel er umiddelbart kompatible!
Avatar billede hoejrup Nybegynder
01. februar 2001 - 10:36 #12
Jeg er godt klar over at StarCalc kan importere Excel, men derfor behøver de ikke at være 100% ens.

Fik du løst din opgave?

/per
Avatar billede janvogt Praktikant
01. februar 2001 - 11:40 #13
Én simpel formel kan klare problemet:

=IF(A1<=2937;A1;IF(A1<=14881;2937+((A1-2937)*0,53);IF(A1<=24322;2937+6330,32+((A1-14881)*0,585);IF(A1>24322;2937+6330,32+5522,985+((A1-24322)*0,295)))))

Skriv dit tal i celle A1 og formlen i en anden celle.

Jeg har tilladt mig, at lukke \"hullerne\" i dine intervaller. Er det forkert, kan du bare ændre i formlen.

Avatar billede jhavn Nybegynder
01. februar 2001 - 21:03 #14
janvogt er nærmest men jeg får en fejl der hedder #NAVN? når jeg intaster formelen i mit staroffice hvad kan jeg gøre
Avatar billede tsiersbaek Nybegynder
02. februar 2001 - 12:41 #15
Det er fordi du skal skrive \"hvis\" i stedet for \"if\".

Så funk\'er den! Prøv selv.

Torben.
Avatar billede tsiersbaek Nybegynder
02. februar 2001 - 13:12 #16
Sørens osse. Jeg har ikke min StarOffice installeret på denne maskine.... :-(

Men det løste i hvert fald præcis det samme problem i Excel.

Jeg skal prøve at se på den i StarOffice i løbet af eftermiddagen.

Torben.
Avatar billede james_t_dk Juniormester
02. februar 2001 - 14:07 #17
Kræver jo da vel at man har en dansk SO for at kunne skrive HVIS istedet for IF!  ;-)
Avatar billede tsiersbaek Nybegynder
02. februar 2001 - 16:22 #18
Det har du helt ret i. Jeg har netop checket formlen i min (danske) StarOffice. Med \"IF\" fås det beskrevne resultat #NAVN, med \"HVIS\" fås det korrekte (beregnede) svar.

Torben.
Avatar billede hoejrup Nybegynder
02. februar 2001 - 16:42 #19
=IF(A1<=2937;A1;IF(A1<=14881;2937+((A1-2937)*0.53);IF(A1<=24322;2937+6330.32+((A1-14881)*0.585);IF(A1>24322;2937+6330.32+5522.985+((A1-24322)*0.295)))))

Jeg er fuldstændig enig med dig at Jan Vogt løsning kommer tættest på, når vi taler om data i en celle.

Du kan prøve denne løsning der anvender amerikansk komma istedet for dansk.

/per
Avatar billede jhavn Nybegynder
03. februar 2001 - 00:41 #20
rigtig mange tak for hjælpen
Avatar billede tsiersbaek Nybegynder
03. februar 2001 - 10:08 #21
For fuldstændighedens skyld kan denne formel også gøres lidt lettere at vedligeholde.

Hvis grænserne i dine intervaller bliver ændret skal du rette i samtlige forekomster af formlen.

Det er ofte ikke noget stort problem, nemlig hvis regnearket ikke er særlig stort. Så kan du jo bare kopiere den rettede formel til de relevante steder.

Men opererer du med modeller af bare noget omfang kan du hurtigt miste overblikket over alle de steder den skal rettes.

Der vil det være bedre at samle konstanterne, som f. eks. disse intervalgrænser er, i et område, der kun tager sig af at opbevare denne slags, og så referere til de relevante celler i dette område. Her kan du også opbevare formlen, så du har både data og \"formelbibliotek\" samlet et sted.

Torben.
Avatar billede tsiersbaek Nybegynder
04. februar 2001 - 22:40 #22
- og endnu én gang (fra prins Knud). Ud over at have checket formlen i min (danske) StarOffice 5.2 på Windows har jeg nu også checket den på den danske installation på en (ret dansk) installation af Mandrake Linux 7.2.
Her virker formlen OGSÅ med \"HVIS\". Til gengæld er decimalpunktet et \".\" (punktum) og ikke \",\" (komma). Jeg _mener_ at jeg _har_ sat formaterne korrekt (efter dansk tradition).
Derfor er dette blot til info. Har nogen Linux-haj andre nuancer på dette?

Torben.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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