Avatar billede matiasdk Nybegynder
07. december 2006 - 11:49 Der er 6 kommentarer

Evaluering af tekst (fx. "34+54+23")

Hej,

Jeg har en celle, fx. A1, som indeholder følgende tekst "34+54+23".

Jeg vil gerne have, at cellen B1 indeholder værdien af den evaluerede tekst, dvs. 34+54+23, altså 111, som talværdi.

Jeg har prøvet at skrive "=VÆRDI(A1)", men det virker tydeligvis ikke.

er der noget funktionskald til at udføre dette?
Avatar billede hpo Nybegynder
07. december 2006 - 12:15 #1
Er der altid tre tal?
Skal de altid lægges sammen?
Er de altid på cifre?

/hpo
Avatar billede hpo Nybegynder
07. december 2006 - 12:17 #2
Du kan lave noget formel-arbejde, der tjekker på tegnene mellem de tal der står, og så evt. lave noget benarbejde med funktionerne left/right, for at fange de korrekte cifre. Men for at gøre dette, ville det være rart at vide lidt mere om hvordan tallene "opstår" og om de har nogen karakteristika, som man kan arbejde ud efter.

/hpo
Avatar billede hpo Nybegynder
07. december 2006 - 12:20 #3
=+MIDT(A1;1;2)+MIDT(A1;4;2)+MIDT(A1;7;2)
Giver det ønskede resultat, hvis der ALTID er tre tal der summes, og tallene er på to cifre.
Avatar billede matiasdk Nybegynder
07. december 2006 - 12:23 #4
Nej det ser sådan her ud:

1500*Q
1500*1500 + 4871*(Q-1500)
1500*1500 + 4871*(2000-1500) + 4741*(Q-2000)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(Q-4500)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(Q-6000)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(7500-6000) + 4677,28*(Q-7500)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(7500-6000) + 4677,28*(10500-7500) + 4625,51*(Q-10500)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(7500-6000) + 4677,28*(10500-7500) + 4625,51*(13500-10500) + 4574,78*(Q-13500)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(7500-6000) + 4677,28*(10500-7500) + 4625,51*(13500-10500) + 4574,78*(16500-13500) + 4525,7*(Q-16500)
1500*1500 + 4871*(2000-1500) + 4741*(4500-2000) + 4687,1*(6000-4500) + 4730,1*(7500-6000) + 4677,28*(10500-7500) + 4625,51*(13500-10500) + 4574,78*(16500-13500) + 4525,7*(19500-16500) + 4476,35*(Q-19500)


Jeg kan adskille den variable del (hvor der står Q) og evaluere det resterende så det ikke fylder så meget. Endvidere skal jeg lave en datatabel med punkter, hvor det er oplagt at erstatte Q med variabelværdien og herefter evaluere.

Jeg har oprettet en funktion "MyEval" som ser sådan her ud:
Function MyEval(Formel)

Formel = Replace(Formel, ",", ".")
MyEval = Application.Evaluate(Formel)

End Function

Men jeg er ikke så meget for det med makroer pga. kompatibilitetsproblemer.
Avatar billede hpo Nybegynder
07. december 2006 - 12:49 #5
OK - jeg ligger ikke lige inde med en løsning, så jeg melder "pas". Men held og lykke ;)

/hpo
Avatar billede mrjh Novice
07. december 2006 - 21:30 #6
Lav en kolonne ved siden af med formel som henviser til cellen f.eks. ="+"&A1
Kopier cellen med formlen, vælg rediger, indsæt speciel, ok.
Tryk herefter F2 og enter.
Hvis det er et større omrøde kan de markere cellerne, trykke F2 og ctrl+enter
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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