Avatar billede mh-j Juniormester
08. februar 2015 - 13:33 Der er 5 kommentarer og
1 løsning

oversætte et tal til tekst

Jeg har denne makro som jeg ikke kan få til at køre mere.
Jeg har et tal i M44 og skal have det oversat i A47 til tekst.
Hvad laver jeg af fejl
Function suma_lt(ByVal suma) As String
'Funkcija pavercia zodziais suma pinigu
Dim ct$, x, Mase, MasesSuma, Liko, i, Liet$, Linksnis, Pirma$, Kitos$
suma_lt = ""
On Error GoTo klaida21
If suma > 999999999.99 Then
    suma_lt = "Daugokai gaunasi..."
    Exit Function
End If
Static pinigai$(3, 3)
        pinigai$(1, 1) = "litas"
        pinigai$(1, 2) = "litai"
        pinigai$(1, 3) = "litø"
        pinigai$(2, 1) = "tûkstantis"
        pinigai$(2, 2) = "tûkstanèiai"
        pinigai$(2, 3) = "tûkstanèiø"
        pinigai$(3, 1) = "milijonas"
        pinigai$(3, 2) = "milijonai"
        pinigai$(3, 3) = "milijonø"
Static M(3)
        M(1) = 1
        M(2) = 1000
        M(3) = 1000000

Const Max_sk = 36
Static SkaiciaiN(36)
        SkaiciaiN(1) = 1
        SkaiciaiN(2) = 2
        SkaiciaiN(3) = 3
        SkaiciaiN(4) = 4
        SkaiciaiN(5) = 5
        SkaiciaiN(6) = 6
        SkaiciaiN(7) = 7
        SkaiciaiN(8) = 8
        SkaiciaiN(9) = 9
        SkaiciaiN(10) = 10
        SkaiciaiN(11) = 11
        SkaiciaiN(12) = 12
        SkaiciaiN(13) = 13
        SkaiciaiN(14) = 14
        SkaiciaiN(15) = 15
        SkaiciaiN(16) = 16
        SkaiciaiN(17) = 17
        SkaiciaiN(18) = 18
        SkaiciaiN(19) = 19
        SkaiciaiN(20) = 20
        SkaiciaiN(21) = 30
        SkaiciaiN(22) = 40
        SkaiciaiN(23) = 50
        SkaiciaiN(24) = 60
        SkaiciaiN(25) = 70
        SkaiciaiN(26) = 80
        SkaiciaiN(27) = 90
        SkaiciaiN(28) = 100
        SkaiciaiN(29) = 200
        SkaiciaiN(30) = 300
        SkaiciaiN(31) = 400
        SkaiciaiN(32) = 500
        SkaiciaiN(33) = 600
        SkaiciaiN(34) = 700
        SkaiciaiN(35) = 800
        SkaiciaiN(36) = 900

Static SkaiciaiS$(36)
        SkaiciaiS$(1) = "vienas"
        SkaiciaiS$(2) = "du"
        SkaiciaiS$(3) = "trys"
        SkaiciaiS$(4) = "keturi"
        SkaiciaiS$(5) = "penki"
        SkaiciaiS$(6) = "ðeði"
        SkaiciaiS$(7) = "septyni"
        SkaiciaiS$(8) = "aðtuoni"
        SkaiciaiS$(9) = "devyni"
        SkaiciaiS$(10) = "deðimt"
        SkaiciaiS$(11) = "vienuolika"
        SkaiciaiS$(12) = "dvylika"
        SkaiciaiS$(13) = "trylika"
        SkaiciaiS$(14) = "keturiolika"
        SkaiciaiS$(15) = "penkiolika"
        SkaiciaiS$(16) = "ðeðiolika"
        SkaiciaiS$(17) = "septyniolika"
        SkaiciaiS$(18) = "aðtuoniolika"
        SkaiciaiS$(19) = "devyniolika"
        SkaiciaiS$(20) = "dvideðimt"
        SkaiciaiS$(21) = "trisdeðimt"
        SkaiciaiS$(22) = "keturiasdeðimt"
        SkaiciaiS$(23) = "penkiasdeðimt"
        SkaiciaiS$(24) = "ðeðiasdeðimt"
        SkaiciaiS$(25) = "septyniasdeðimt"
        SkaiciaiS$(26) = "aðtuoniasdeðimt"
        SkaiciaiS$(27) = "devyniasdeðimt"
        SkaiciaiS$(28) = "vienas ðimtas"
        SkaiciaiS$(29) = "du ðimtai"
        SkaiciaiS$(30) = "trys ðimtai"
        SkaiciaiS$(31) = "keturi ðimtai"
        SkaiciaiS$(32) = "penki ðimtai"
        SkaiciaiS$(33) = "ðeði ðimtai"
        SkaiciaiS$(34) = "septyni ðimtai"
        SkaiciaiS$(35) = "aðtuoni ðimtai"
        SkaiciaiS$(36) = "devyni ðimtai"

Static SkaiciaiL(36)
        SkaiciaiL(1) = 1
        SkaiciaiL(2) = 2
        SkaiciaiL(3) = 2
        SkaiciaiL(4) = 2
        SkaiciaiL(5) = 2
        SkaiciaiL(6) = 2
        SkaiciaiL(7) = 2
        SkaiciaiL(8) = 2
        SkaiciaiL(9) = 2
        SkaiciaiL(10) = 3
        SkaiciaiL(11) = 3
        SkaiciaiL(12) = 3
        SkaiciaiL(13) = 3
        SkaiciaiL(14) = 3
        SkaiciaiL(15) = 3
        SkaiciaiL(16) = 3
        SkaiciaiL(17) = 3
        SkaiciaiL(18) = 3
        SkaiciaiL(19) = 3
        SkaiciaiL(20) = 3
        SkaiciaiL(21) = 3
        SkaiciaiL(22) = 3
        SkaiciaiL(23) = 3
        SkaiciaiL(24) = 3
        SkaiciaiL(25) = 3
        SkaiciaiL(26) = 3
        SkaiciaiL(27) = 3
        SkaiciaiL(28) = 3
        SkaiciaiL(29) = 3
        SkaiciaiL(30) = 3
        SkaiciaiL(31) = 3
        SkaiciaiL(32) = 3
        SkaiciaiL(33) = 3
        SkaiciaiL(34) = 3
        SkaiciaiL(35) = 3
        SkaiciaiL(36) = 3

    'Tuojau pat iðskirsime centus
    ct$ = Right(Format(suma, "0.00"), 2)
    For x = 3 To 1 Step -1
        Mase = M(x)
        MasesSuma = Int(suma / Mase)
        Liko = suma - MasesSuma * Mase
        suma = MasesSuma
        If suma > 0 Then
                For i = Max_sk To 1 Step -1
                        If suma >= SkaiciaiN(i) Then
                                Liet$ = Liet$ + SkaiciaiS$(i) + " "
                                Linksnis = SkaiciaiL(i)
                                suma = suma - SkaiciaiN(i)
                        End If
                Next i
                Liet$ = Liet$ + pinigai$(x, Linksnis) + " "
        End If
        suma = Liko
        Linksnis = 3
    Next x
    If MasesSuma = 0 Then Liet$ = Liet$ + "litø"
                                                 
    'Cento tikslumu!
    Liet$ = Trim(Liet$) & " " & ct$ & " ct"

    'Pirma raidë - didþioji
    Pirma$ = UCase$(Left$(Liet$, 1))
    Kitos$ = Right$(Liet$, (Len(Liet$) - 1))
    suma_lt = Pirma$ + Kitos$
Exit Function
klaida21:
Exit Function
     
End Function
Avatar billede supertekst Ekspert
08. februar 2015 - 15:23 #1
Hvad er problemet?

Har forsøgt med;
25100 = Dvideðimt penki tûkstanèiai vienas ðimtas litø 00 ct
799 = Septyni ðimtai devyniasdeðimt devyni litai 00 ct
Avatar billede mh-j Juniormester
08. februar 2015 - 16:27 #2
Jeg har også dette til at stå i starten

Sub Macro1()
'
' Macro1 Macro
' Macro recorded 2004.10.14 by
'

'

og får denne fejl

Compile error:
Expected End Sub

Min curser står i A47 og jeg skal have oversat det tal der står i M44
som er en sum af diverse tal
Avatar billede kurtba Ekspert
08. februar 2015 - 18:27 #3
Som jeg ser det har du svaret her

https://msdn.microsoft.com/en-us/library/office/gg264694(v=office.15).aspx

Du starter makroen med en sub procedure men slutter den med en End Function i stedet for en End Sub
Avatar billede mh-j Juniormester
08. februar 2015 - 19:33 #4
Jeg har ændret det, men jeg kan ikke få den til at tage tallet og skrive det med bogstaver.
Jeg står i et felt og skal bruge tallet fra et andet, men det virker ikke.
Måske det er mig der laver en fejl som jeg ikke ser.
Jeg får ingen fejl længere.
Avatar billede supertekst Ekspert
08. februar 2015 - 22:53 #5
Det vil være en hjælp, hvis du kunne vise den øvrige kode.

Hvor forestiller du dig, at "oversættelsen" skal initieres?
Avatar billede mh-j Juniormester
10. marts 2015 - 05:41 #6
Tak, har fundet ud af det
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