Avatar billede engberg Juniormester
25. maj 2023 - 17:27 Der er 13 kommentarer og
2 løsninger

Reducere et udtryk (2x+7x-5x)

Hejsa

Jeg har et felt hvori der fx. kan stå 2x+7x-5x
Kan jeg med formel få Excel til at reducere det og give mig svaret 4x ?

Jeg har prøvet =SUM(UDSKIFT(A1;"x";"")))    men Excel forstår ikke udtrykket, som fremkommer efter UDSKIFT.

Der er også et vildere felt, hvor udtrykket er fx. 2x+7a-5x+3a men hvis jeg kan få hjælp til det første, kan jeg måske selv finde ud af det næste..
Avatar billede ebea Ekspert
25. maj 2023 - 18:25 #1
Hvis du skal bruge udskift formlen, skal du bruge den uden SUM. =UDSKIFT(A1;"x";"*")
Avatar billede falster Ekspert
25. maj 2023 - 19:12 #2
Gad vist, om ikke du kan anvende den ny LET funktion (med X=1) og så sammenstilling af resultatet med & "x".

https://support.microsoft.com/da-dk/office/funktionen-let-34842dd8-b92b-4d3f-b325-b8b8f9908999

(Jeg har ikke mulighed for at teste.)
Avatar billede engberg Juniormester
25. maj 2023 - 20:00 #3
Jeg er med på at jeg kan bruge UDSKIFT uden sum, men så opnår jeg ikke min hensigt..

LET kan jeg heller ikke få til at virke.. Har prøvet
=LET(x;1;A1) og =LET(x;1;SUM(A1)) uden held
Avatar billede xl-Enthusiast Ekspert
25. maj 2023 - 20:53 #4
Du kan prøve at se, om du kan bruge følgende:
I A10 indtast følgende: 2x+7x-5x
I A12 indtast: =SUBSTITUTE(A10;"x";"*x") som skal returnere 2*x +7*x -5*x
I B12 indtast: =Evaluate&"x"

hvor Evaluate er en navngiven formel der oprettes på følgende måde:
Gå til Name Manager, New, Name: Evaluate.
I Refers to skriver du: =Sheet1!A12 (bemærk ingen dollartegn). Tryk på Close.
I regnearket B12 skulle du nu få resultatet 4x.
Hvis du ikke umiddelbart har adgang til de gamle xl 4 makroer som Evaluate er en del af kan det være nødvendigt at ændre i Trust Settings (Macro Settings).
Avatar billede xl-Enthusiast Ekspert
25. maj 2023 - 20:55 #5
Tilføjelse til #4
Filen skal gemmes som xlsm.
Avatar billede engberg Juniormester
26. maj 2023 - 08:07 #6
De første 2 trin virker

Men når jeg opretter Evaluate, så kan jeg enten få den til at returnere
x
eller
2*x +7*x -5*xx

Jeg har uploadet test-filen her:
https://file.io/Psh6jWmfI9Oj
Avatar billede engberg Juniormester
26. maj 2023 - 08:15 #7
Jeg har også prøvet med den danske Evaluer i stedet for evaluate
Avatar billede xl-Enthusiast Ekspert
26. maj 2023 - 09:58 #9
@engberg
I øvrigt vil jeg ikke i almindelighed tilråde at bruge de gamle xl4 makroer.
Avatar billede xl-Enthusiast Ekspert
26. maj 2023 - 10:27 #10
Hvis du ofte har brug for den slags reduktioner af matematiske udtryk så, download er gratis computer algebra system som for eksempel Maxima.
Avatar billede falster Ekspert
26. maj 2023 - 12:54 #11
xl-Enthusiast's udmærkede forklaringer kan suppleres med denne vejledning fra ExtendOffice, der viser Evaluate-funktionen under punktet

Convert text strings to formulas with User Defined Function
i
https://www.extendoffice.com/documents/excel/1683-excel-convert-text-string-to-formula.html

(før de selvfølgelig i næste punkt gennemgår deres købeløsning.)
Avatar billede engberg Juniormester
28. maj 2023 - 10:09 #12
Der var den!

@falster 's løsning med @xl-Enthusiast 's løsning under, så virker det !

-og jeg er med på det er en lidt skør løsning, jeg kender andre bedre måder at løse ligninger, men jeg er matematiklærer og prøver at lave en worksheet-generator i excel med løsninger også - derfor skulle det være en excel løsning.. :-)

Tak for hjælpen!
Avatar billede xl-Enthusiast Ekspert
28. maj 2023 - 11:00 #13
Excel er langt fra det optimale værktøj her, men hvis du nødvendigvis må bruge det, så kan det udtryk du nævnte i dit oprindelige indlæg, 2x+7a-5x+3a, løses på for eksempel denne måde: (Excel 365 engelsk version). Formlen i A6 er strengt taget overflødig, hvis du indtaster formlen i B6 som vist. Jeg har her givet x værdien 1 og a værdien 2, men det kunne også være andre værdier.

A5: 2x+7a-5x+3a
A6: =SUBSTITUTE(SUBSTITUTE(A5;"x";"*x");"a";"*a") som retrurnerer:
2*x+7*a-5*x+3*a

B6: =LET(x;1;a;2;(2*x-5*x)/x&"x +"&(7*a+3*a)/a&"a")
Avatar billede engberg Juniormester
29. maj 2023 - 07:47 #14
xl-Enthusiast>> I dette tilfælde er jeg bundet - ja, det er en god idé med /x bagefter og tildele værdi - problemet er vel at få x'erne og a'erne hver for sig (2*x-5*x), som du hardcoder i LET formlen..
Avatar billede xl-Enthusiast Ekspert
29. maj 2023 - 08:12 #15
Ja præcist - og blandt andet derfor skrev jeg som jeg gjorde i første sætning i #13.
For eksempel det gratis program Maxima håndterer den slags med lethed.
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