Du bliver nødt til at skrive en funktion, der kan \'oversætte\' dine tal til bogstaver.
Alternativet skal du bruge et miderlidigt ark til at splitte dit tal op i cifre, oversætte dem ved hjælp af LOPSLAG og derefter sætte dem sammen i din resultat-celle
Send mig en email, hvis du har brug for hjælp til dette....(livephoto@livephoto.adsl.dk)
Jo da....her er min kode.... Den er lidt \'la-la\', men den virker ganske efter hensigten.... ---------------------------------- Function nr2let(nr) As String
Dim t As Integer, x As Integer
If Len(nr) = 0 Then nr2let = \"NULL\" Exit Function End If
For t = 1 To Len(nr) Select Case Mid(nr, t, 1) Case 0 nr2let = nr2let & \"NUL \" Case 1 nr2let = nr2let & \"ET \" Case 2 nr2let = nr2let & \"TO \" Case 3 nr2let = nr2let & \"TRE \" Case 4 nr2let = nr2let & \"FIRE \" Case 5 nr2let = nr2let & \"FEM \" Case 6 nr2let = nr2let & \"SEKS \" Case 7 nr2let = nr2let & \"SYV \" Case 8 nr2let = nr2let & \"OTTE \" Case 9 nr2let = nr2let & \"NI \" Case \",\" nr2let = nr2let & \"KOMMA \" Case \".\" nr2let = nr2let & \"PUNKTUM \" Case Else nr2let = nr2let & \" \" & Mid(nr, t, 1) End Select Next t
End Function -------------------------------------
Ved at lægge funktionen i en XLA-fil, har jeg så altid adgang til denne funktion.....hvis den bliver indlæst under \'tilføjelsesprogrammer\'.
> harboe : Nu ved jeg ikke om du briger den funktion jeg har sendt (den var trods alt sendt uopfordret...) men den bruges som enhver anden funktion i Excel. Du dobbeltklikker på xla-filen, hvorved den bliver åbnet, men den indeholder ingen ark, kun funktioner. Eksempel : Et regneark der ser således ud -
| 1 | 2 | ----------------------- A | 1234|=nr2let(A1) | ----------------------- B | | | -----------------------
...vil i celle A2 give resultatet \'EN TO TRE FIRE\'
Det er sådan at jeg skal bruge funktionen i et felt med et totalbeløb... så der er mange andre tal på arket..... xelor>>> jeg ved ikke hvordan jeg skal bruge det du har sendt mig ....... beskriv lige hvordan... lidt udførligt så jeg ikke kan være i tvivl.
harboe> Du lægger filen i kataloget med tilføjelsesprogrammer (det nemmeste er at søge efter xla-filer) Dernæst går du ind i Excel og under Funktioner - Tilføjelsesprogrammer sætter du hak i nr2lett. Så åbner du dit regneark.
Hvis den celle, du vil have oversat til tekst er A1 og har værdien 1234, og du vil have oversættelsen i celle A2, skal der i A2 stå \'=nr2let(A1)\'
Hvis cellen du vil have oversat eks. indeholder en formel \'=sum(A1:A5)\' of du vil have oversættelsen i A6, skal A6 indeholde denne formel: \'=nr2let(sum(a1:a5))\'
>>> nerøs Fantastisk løsning, selvom der går temmelige meget kode til. Den tager tilsyneladende højde for alt! Min løsning, som er \"kodefri\", fylder kun 1/4.
Harboe>> Hvis du ellers har problemer, så send en email til mig på mmp@astonitgroup.com, så sender jeg dig et demoark, hvor funktionen bliver brugt, og et dokument med beskrivelse
Jeg har ikke nogen løsning. Løsningen som omtales findes på den adresse jeg angav i min første kommentar. Den kan gengive et hvert tal i ord - på engelsk.
Jeg har prøvet at lave en arrayformel, men kan ikke komme længere end til at lave en array med tallene som ord:
Case \",\" If Len(nr) - t = 1 Then nr2let = nr2let & Right(nr, Len(nr) - t) & \"0/100\" Else nr2let = nr2let & Right(nr, Len(nr) - t) & \"/100\" End If Exit Function
harboe>> Har du overskrevet den gamle ? Umiddelbart skal den nye bruges ligesom den gamle... Kommer der ikke noget resultat, eller skriver den \'#NAVN\' eller giver den forkerte værdier ?
flemmingdahl>>> Det er et OK forslag, men hvis værdien der skal konverteres består af mere end 2 decimaler, vil dit forslag ikke give nogen mening : 1234,345 --> en to tre fire 345/100 ??!
xelor -> Det er rigtigt, at HVIS værdien har mere end 2 decimaler, og det kan ske. Så skal der jo blot laves lidt ekstra validering på antallet af karakter efter komma\'et.
hmmm - det er måske endnu et af de spørgsmål, som bliver løst, men aldrig få accepteret et eller flere svar !
Synes godt om
Ny brugerNybegynder
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.