Telefonszámunk: 1-472-0679

Szám szöveggel excelben

Kezdőlap Fórumok Excel programozás Szám szöveggel excelben

3 bejegyzés megtekintése - 1-3 / 3
  • Szerző
    Bejegyzés
  • #8497
    frank
    Felhasználó

    Üdvözletem.

    Az iránt érdeklődnék, hogy miként lehet az excelbe beírt számot egy másik cellában szövegesen megjeleníteni.
    Az érték max 10.000.000 lenne amit ki kellene tudni íratni szövegesen.
    Találtam néhány makrót,a weben de egyik sem működik.

    Előre is köszönöm a segítséget.

    F

    #8498
    delila
    Felhasználó

    Szia!

    Nem saját készítésű, Krizsák László követte el évekkel ezelőtt.
    Kipróbáltam, tudja a 10M-t.

    Function Szam_kiiras(szam As Long) As String
        Dim j1, j10, j10a, j100
        j1 = Array("", "egy", "kettő", "három", "négy", "öt", "hat", "hét", "nyolc", "kilenc")
        j10 = Array("", "tíz", "húsz", "harminc", "negyven", "ötven", "hatvan", "hetven", "nyolcvan", "kilencven")
        j10a = Array("", "tizen", "huszon", "harminc", "negyven", "ötven", "hatvan", "hetven", "nyolcvan", "kilencven")
        j100 = Array("száz", "", "ezer", "millió", "milliárd")
        betu = ""
        If szam = 0 Then
            Szam_kiiras = "Nulla"
            Exit Function
        End If
        s = Format(szam, "0")
        j = 1
        While s <> ""
            i = Len(s) - 2
            If i < 1 Then i = 1
            s2 = Mid(s, i, 3)
            s = Left(s, i - 1)
            s3 = ""
            If Len(s2) = 3 Then
                s3 = s3 + j1(Asc(Mid(s2, 1, 1)) - 48)
                If Mid(s2, 1, 1) <> "0" Then s3 = s3 + j100(0)
                s2 = Right(s2, Len(s2) - 1)
            End If
            If Len(s2) = 2 Then
                If Mid(s2, 2, 1) = "0" Then
                    s3 = s3 + j10(Asc(Mid(s2, 1, 1)) - 48)
                Else
                    s3 = s3 + j10a(Asc(Mid(s2, 1, 1)) - 48)
                End If
                s2 = Right(s2, Len(s2) - 1)
            End If
            s3 = s3 + j1(Asc(Mid(s2, 1, 1)) - 48)
            If s3 <> "" Then s3 = s3 + j100(j)
            If (betu <> "") And (szam > 2000) And (s3 <> "") Then kot = "-" Else kot = ""
            betu = s3 + kot + betu
            j = j + 1
        Wend
        betu = UCase(Left(betu, 1)) & Right(betu, Len(betu) - 1)
        Szam_kiiras = betu
    End Function

    Delila

    #8559
    eNFeri
    Felhasználó

    Sziasztok
    Nem MS excel, de LibreOfficehoz elérhető egy bővítmény, amit függvényként lehet használni, és tudja a számokat 1,6milliárdig biztos, és működik több nyelven (köztük magyarul is). A neve: NUMBERTEXT.
    Innen tölthető: https://numbertext.github.io/ és a forráskódja is fenn van.

3 bejegyzés megtekintése - 1-3 / 3
  • Be kell jelentkezni a hozzászóláshoz.