Avatar billede harboe Nybegynder
12. januar 2001 - 01:36 Der er 26 kommentarer og
1 løsning

Exel office 2000> tal og bogstaver

Jeg skal have regneaket til at skrive et tal med bogstaver... feks.: 6000 = seks nul nul nul.

Har prøvet med en LAAAANG if komando men exel vil kun acceptere 7 funktioner i en funktion......

hvad skal jeg gøre ??
Avatar billede xelor Nybegynder
12. januar 2001 - 07:43 #1
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)
Avatar billede janvogt Praktikant
12. januar 2001 - 11:11 #2
Hvor mange cifre er der maks. i din talrække?

Har du en mail-adresse så sender jeg dig løsningen.
Avatar billede harboe Nybegynder
13. januar 2001 - 17:33 #3
min e-mail er: line.martin@private.dk
Avatar billede janvogt Praktikant
15. januar 2001 - 09:07 #4
Løsning hermed sendt. Den kan klare op til 8 cifre, men kan sagtens udvides til flere.
Avatar billede xelor Nybegynder
15. januar 2001 - 17:20 #5
>janvogt - hvorfor har du lavet begrænsing på længden ??
hvorfor ikke lave en løkke der itererer igennem hver enkelt tegn......
Det har jeg lavet....
Avatar billede harboe Nybegynder
16. januar 2001 - 02:16 #6
ja jeg har brug for hjælp til det
Avatar billede janvogt Praktikant
16. januar 2001 - 13:31 #7
> harboe har du fået min løsning?
Løser den ikke dit problem? 8 cifre er vel tilstrækkeligt.

Selvfølgelig kan man lave en løkke som checker hvor mange cifre der er, men det er vel ikke nødvendigt her.
Avatar billede nerøs Nybegynder
16. januar 2001 - 17:56 #8
Må vi ikke se janvogt + xelor?
Jeg fik lige den her ind af døren:
http://www.excel-vba-access.com/numbersletters.xls

VH nerøs
Avatar billede xelor Nybegynder
16. januar 2001 - 21:47 #9
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\'.



Avatar billede xelor Nybegynder
16. januar 2001 - 21:52 #10
> 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\'

Ellers må du emaile mig....
Avatar billede xelor Nybegynder
16. januar 2001 - 21:54 #11
>nerøs :
Den er helt fænomanal, men hvad hvis man har behov for ikke at være begrænset i størrelsen af sine tal ??

Jeg mener, man kan jo ikke kode samtlige \'tusind\'-betgnelser ind....eller kan man..??
Avatar billede harboe Nybegynder
17. januar 2001 - 02:09 #12
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.
Avatar billede xelor Nybegynder
17. januar 2001 - 07:59 #13
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))\'
Avatar billede janvogt Praktikant
17. januar 2001 - 09:19 #14
>>> 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.
Avatar billede xelor Nybegynder
17. januar 2001 - 09:57 #15
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
Avatar billede xelor Nybegynder
17. januar 2001 - 09:58 #16
>> nerøs
Må vi ikke se din løsning...??
Avatar billede nerøs Nybegynder
17. januar 2001 - 22:55 #17
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:

=(SLÅ.OP(VÆRDI(MIDT(tal;RÆKKE(INDIREKTE(\"1:\"&LÆNGDE(tal)));1));{0;1;2;3;4;5;6;7;8;9};{\"nul \";\"en \";\"to \";\"tre \";\"fire \";\"fem \";\"seks \";\"syv \";\"otte \";\"ni \"}))

Hvor slåop =match,
værdi=value
midt=mid
række=row
indirekte=indirect
længde=len (tror jeg)

\"Tal\" er en navngivet celle med et tal i princippet hvilken som helst længde.
Men der mangler altså lige at få array\'en lavet om til en streng....
Avatar billede harboe Nybegynder
18. januar 2001 - 01:06 #18
xelor >> Jamen ved du hvad det er jo fantastisk..... Og nu kommer det store men.

Kan du lave en udgave der skriver det erfer kommaet lige som en chek.

eks. : 6000,25 = seks nul nul nul 25/100

kan det lade sig gøre. Hvis det kan det er du yderst fortjent til de 37 point og jeg vil smide 150 point oven i !!!!!!

Håber snart at høre fra dig!! min mail står længere oppe.
01. februar 2001 - 16:52 #19
Hej harboe

Prøv at lave denne lille ændring i Case \",\"

        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

Avatar billede harboe Nybegynder
02. februar 2001 - 00:26 #20
xelor >>> jamen hvorfor kan jeg ikke få den nye til at virke ??????

den gamle virker fint ?

Harboe
Avatar billede xelor Nybegynder
02. februar 2001 - 02:29 #21
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 ?
Avatar billede xelor Nybegynder
02. februar 2001 - 02:56 #22
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 ??!
Avatar billede xelor Nybegynder
02. februar 2001 - 02:58 #23
harboe>> Jeg har sendt dig en ny nrtoletter.xla på email-adressen ovenfor....
02. februar 2001 - 23:02 #24
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.
17. februar 2001 - 15:37 #25
Er det løst eller ?
Avatar billede xelor Nybegynder
18. februar 2001 - 23:59 #26
Tja flemmingdahl, jeg venter stadig på at høre fra dem.....:-(
19. februar 2001 - 10:48 #27
hmmm - det er måske endnu et af de spørgsmål, som bliver løst, men aldrig få accepteret et eller flere svar !
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