Avatar billede HHA Forsker
18. januar 2022 - 20:25 Der er 7 kommentarer og
1 løsning

Hvis eller og

Hejsa,

Kæmper med en linje der skal regne efter hvad der er af værdier i andre celler.
Prøver at skrive noget og håber I forstår...

=HVIS(O9="TEST";OG(R25<G20;THEN;R25*D33)ELLER(O9="TEST";OG(R25>G20;OG;<G21;THEN;R25*D34)ELLER(O9="TEST";OG(R25>G21;THEN;R25*D34)

Det er noget forfærdeligt svut, men håber I forstår hvor jeg vil hen med det.
Avatar billede jens48 Ekspert
18. januar 2022 - 21:37 #1
Ja, det er noget forfærdeligt "svut", som virker komplet uforståeligt. Du blander engelsk og dansk sammen, eller rettere du tager dele fra VBA, som altid er på engelsk, og sætter det ind i en formel. "THEN" skal aldrig bruges i en formel uanset om den er dansk eller engelsk. Ønsker du  at skrive at hvis X, så Y, ellers Z kommer det til at se sådan ud:
=HVIS(X;Y;Z)
Adskillelsen består blot af et semikolon.
Men start med at beskrive hvad du vil teste. Ellers er det svært at vide hvordan formelen skal se ud
Avatar billede xl-Enthusiast Ekspert
18. januar 2022 - 22:33 #2
Måske

=IF((O9="TEST")*(R25<G20);R25*D33;IF((O9="TEST")*(R25>G20)*(R25<G21);R25*D34;IF((O9="TEST")*(R25>G21);R25*D34;"")))

dansk

=HVIS((O9="TEST")*(R25<G20);R25*D33;HVIS((O9="TEST")*(R25>G20)*(R25<G21);R25*D34;HVIS((O9="TEST")*(R25>G21);R25*D34;"")))
Avatar billede xl-Enthusiast Ekspert
19. januar 2022 - 08:59 #3
Formlen i #2 kan gøres lidt kortere:

=IF((O9="TEST")*(R25<G20);R25*D33;IF((O9="TEST")*(R25>G20)*(R25<G21)+(O9="TEST")*(R25>G21);R25*D34;""))
Avatar billede HHA Forsker
19. januar 2022 - 10:58 #4
jens48, du har helt ret.
Og det kan også godt være jeg har over skudt den her formel til at køre i en celle.
Men det kan I måske hjælpe mig med at afgøre.

xl-Enthusiast, det var meget i den rigtige retning 👍
Sætter den ind i cellen og tilpasser den lidt, så den ser sådan her ud.
=HVIS((O9='Må ikke slettes'!B7)*(R34<'Må ikke slettes'!D7);R34/100*'Må ikke slettes'!C7;HVIS((O9='Må ikke slettes'!B7)*(R34>='Må ikke slettes'!D7)*(R34<'Må ikke slettes'!F7);R34/100*'Må ikke slettes'!E7;HVIS((O9='Må ikke slettes'!B7)*(R34>='Må ikke slettes'!H7);R34/100*'Må ikke slettes'!G7;"")))

Men den vil ikke køre det andet HVIS, men kun det første og sidste.

Mht. om det skal være en VBA i stedet, ligger i at  'Må ikke slettes'!B7, kan skifte til fx 'Må ikke slettes'!B8.
Jeg kommer til at skifte værdien i O9 og når den skifter, skal den hente skifte regneformel/hente værdierne i nogle andre celler i arket 'Må ikke slettes'
Så om det skal være det ene eller andet, er jeg ikke helt klar over.
Der kunne fx godt blive 10 forskellige variabler af værdien i O9.

De værdier der bruges til beregning ligger ud for B7, B8, B9 osv.
Fx B7 bruger værdierne i C,D,E,F,G og H7 samt B8 bruger værdierne i C,D, E, F, G og H8.

Håber det giver mening.
Avatar billede xl-Enthusiast Ekspert
19. januar 2022 - 11:36 #5
For det første - fungerede den formel jeg viste i #3 ikke. Hvis ikke, hvordan virkede den ikke?

For det andet - er det nu et helt nyt eksempel du præsenterer? I hvert fald synes der at være tale om andre referencer og andre udregninger. Det er altid en fordel hvis du som spørger præsenterer den faktiske problemstilling fra starten af så eventuelle hjælpere ikke skal sidde og detailanalysere flere eksempler fra bunden af.

Og så et lille hjertesuk. Er "Må ikke slettes" et arknavn? Hvis det er, så tillad mig at foreslå, at du kalder det noget andet og kortere, for eksempel A i stedet for. Navne som "Må ikke slettes" gør formler utroligt uskønne og besværlige at læse.
Avatar billede xl-Enthusiast Ekspert
19. januar 2022 - 11:49 #6
Med ændring af arknavn fra "Må ikke slettes" til "A" virker følgende for mig:

=IF((O9=A!B7)*(R34<A!D7);R34/100*A!C7;IF((O9=A!B7)*(R34>=A!D7)*(R34<A!F7);R34/100*A!E7;IF((O9=A!B7)*(R34>=A!H7);R34/100*A!G7;"")))

dansk

=HVIS((O9=A!B7)*(R34<A!D7);R34/100*A!C7;HVIS((O9=A!B7)*(R34>=A!D7)*(R34<A!F7);R34/100*A!E7;HVIS((O9=A!B7)*(R34>=A!H7);R34/100*A!G7;"")))
Avatar billede HHA Forsker
19. januar 2022 - 13:07 #7
Hej xl-Enthuiast,

Takker for hjælpen!

Det var #2 svar jeg testede, da du havde skrevet mens jeg var ved at lave den lange forklaring.
Men har testet den sidste du lavede #6 og den virker 👍

Nu vil jeg se om jeg kan få inkorporeret det med flere forskellige regne funktioner, alt efter hvad værdien i O9 er.
Men den må jeg hellere tænke lidt over, inden jeg evt. spørger uforberedt.....
Avatar billede HHA Forsker
19. januar 2022 - 18:45 #8
xl-Enthuisiast,

Jeg fik tilpasset din kode og den virker som den skal også med flere forskellige værdier i O9.

Takker jer begge for jeres hjælp!
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

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





CIO
Årets CIO 2022: Nu skal Danmarks dygtigste CIO findes - er det dig? Eller kender du en, du vil indstille?