Discussione chiusa
Pagina 1 di 2 12 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: come convertire numeri in lettere in Excel?

  1. #1
    L'avatar di elios81
    elios81 non è in linea Scolaretto
    Luogo
    Italy
    Post
    194

    Question come convertire numeri in lettere in Excel?

    Ciao a tutti.
    Avrei la necessità di convertire numeri in lettere in EXCEL (per esempio 23 -> ventitre). Ho visto che c'è una funzione in Excel al riguardo, si chiama BAHTTESTO, però il risultato viene scritto in lingua "Thai",è possibile convertirlo in italiano?
    Grazie.

  2. #2
    MarcoM non è in linea Novello
    Post
    46
    Lo puoi fare con questo codice, ora è settato B6 cifre (23) B7 risultato (ventitre)
    provalo e poi modificalo secondo le tue esigenze. Funziona correttamente fino a 999.999.999.
    ciao
    codice:
    Sub NumeriLettere()
    Dim N$(100), M$(100)
    Range("B6").Select 'cella col numero da convertire
    Num = ActiveCell.Value
    N$(0) = ""
    N$(1) = "uno"
    N$(2) = "due"
    N$(3) = "tre"
    N$(4) = "quattro"
    N$(5) = "cinque"
    N$(6) = "sei"
    N$(7) = "sette"
    N$(8) = "otto"
    N$(9) = "nove"
    N$(10) = "dieci"
    N$(11) = "undici"
    N$(12) = "dodoci"
    N$(13) = "tredici"
    N$(14) = "quattordici"
    N$(15) = "quindici"
    N$(16) = "sedici"
    N$(17) = "diciassette"
    N$(18) = "diciotto"
    N$(19) = "diciannove"
    M$(0) = ""
    M$(2) = "venti"
    M$(3) = "trenta"
    M$(4) = "quaranta"
    M$(5) = "cinquanta"
    M$(6) = "sessanta"
    M$(7) = "settanta"
    M$(8) = "ottanta"
    M$(9) = "novanta"
    M$(10) = "Cento"
    NN$ = LTrim$(Str$(Num))
    If Len(NN$) > 6 Then
    Milioni$ = Left$(NN$, Len(NN$) - 6)
    NN$ = Right$(NN$, 6)
    End If
    If Len(NN$) > 3 Then
    Migliaia$ = Left$(NN$, Len(NN$) - 3)
    NN$ = Right$(NN$, 3)
    End If
    GoSub Ciclo
    LLL$ = LL$
    NN$ = Migliaia$
    If Migliaia$ = "1" Then
    LLL$ = "mille" + LLL$
    Else
    GoSub Ciclo
    If Len(LL$) > o Then LLL$ = LL$ + "mila" + LLL$
    End If
    NN$ = Milioni$
    If Milioni$ = "1" Then
    LLL$ = "unmilione" + LLL$
    Else
    GoSub Ciclo
    If Len(LL$) > o Then LLL$ = LL$ + "milioni" + LLL$
    End If
     
    Range("B7").Select 'cella che riporta la conversione il lettere
    ActiveCell.Value = LLL$
    GoTo Fine
    Ciclo:
    LL$ = ""
    Num0 = Val(NN$)
    If Len(NN$) = 2 Then NN$ = "0" + NN$
    If Len(NN$) = 1 Then NN$ = "00" + NN$
    Num3 = Val(Right$(NN$, 1))
    Num2 = Val(Mid$(NN$, 2, 1))
    Num1 = Val(Left$(NN$, 1))
    If Num0 > 99 Then
    If Num0 > 199 Then LL$ = N$(Num1)
    LL$ = LL$ + "cento"
    End If
    If Num2 > 1 Then
    LL$ = LL$ + M$(Num2)
    If Num3 > 0 Then
    If Num3 = 1 Or Num3 = 8 Then LL$ = Left$(LL$, Len(LL$) - 1)
    LL$ = LL$ + N$(Num3)
    End If
    End If
    If Num2 < 2 Then
    LL$ = LL$ + N$(Num3 + Num2 * 10)
    End If
    Return
    Fine:
    End Sub

  3. #3
    L'avatar di elios81
    elios81 non è in linea Scolaretto
    Luogo
    Italy
    Post
    194
    Grazie,ma non volevo usare codice VB,altrimenti dovrei inserirlo in tutti i file in cui ho la necessità di convertire numeri in lettere, magari solo per qualche cella... La funzione in Excel, come ho scritto, c'è ed è comoda da usare. Purtroppo il risultato è espresso in una lingua diversa dall'italiano...se qualcuno sa come bypassare la cosa la funzione incorporata in Excel sarebbe ottima.

  4. #4
    MarcoM non è in linea Novello
    Post
    46
    Non credo esistano altre funzioni che ti diano il risultato voluto.
    se cerchi un po' sulla rete troverai che non c'è verso di modificare la lingua

    convertire numeri in testo - microsoft.public.it.office.excel | Google Gruppi

    http://office.microsoft.com/it-it/ex...843281040.aspx

    C'è poi da aggiungere che il codice che ti ho passato basta registralo su un'unica cartella di excel poi eseguirà l'operazione su qualsiasi foglio attivo (anche di altre cartelle logicamente)
    Procedura:
    1) copiare il codice su un modulo di una cartella di lavoro (xyz)
    2) salvare il file xyz
    3) se serve collegare la macro ad un pulsante personalizzato
    4) Finestra nascondi
    5) chiudere excel, viene richiesto il salvataggio, salvare
    6) apri qualsiasi cartella / foglio su cui vuoi eseguire l'operazione e lancia la macro.
    Ciao
    Ultima modifica di MarcoM; 13-03-2008 15:52 

  5. #5
    L'avatar di dragone bianco
    dragone bianco non è in linea Moderatore Globale
    Luogo
    Aosta
    Post
    7,731
    Ancora + semplice


    Creati un file xls Inserigli un modulo con il codice postato

    Salvalo con il nome in formato XLA
    lo salva nei componenti aggiuntivi.

    chiudi excel riaprilo e vai su Strumenti Componenti aggiuntivi
    Verifica s è fleggata la voce con il nome del file appena creato.
    Se non c'è vai su sfoglia e selziona il file e flegghi la voce che appare

    ora il tuo excels ha una nuova funzione che trovi nella sezione definita dall'utente

    Ciao

  6. #6
    L'avatar di -gimar-
    -gimar- non è in linea Novello
    Post
    27
    CONVERTITORE NUMERI IN LETTERE
    2006-08-08_151213_NUM2Euro_aggiunta_per_office2000.zip

    INFORMAZIONI PER L'INSTALLAZIONE
    Finito il download, aprire il file zip ed estrarre il file excel, magari estrarlo sul desktop, ora potete fare come volete, ma vi consiglio: Selezionare il file appena estratto e fare tasto destro taglia (o Ctrl+X), lanciare Excel e dal menu Strumenti-Componenti Aggiuntivi pulsante Sfoglia, dovreste essere reindirizzati in una directory Addins, incollate (tasto destro-incolla o Ctrl+V) in questa directory il file precedente, lo selezionate e cliccate ok. Adesso nell'elenco dei componenti installati avrete anche questo con il flag verde (se non dovesse esserci, mettetelo).

    Da questo momento in poi, nel vs. pc (nel senso che se mandate il file altre persone che non hanno installato tale componente le formule non funzioneranno) le funzioni per utilizzare la conversione in lettere sono 2:

    numeroineuro (converte in lettere inserendo /decimali)

    numeroinlettere (converte in lettere senza /decimali)


    spero di esserti stato d'aiuto
    saluti
    gianni

  7. #7
    MarcoM non è in linea Novello
    Post
    46
    Quote Originariamente inviato da dragone bianco Visualizza il messaggio
    ora il tuo excels ha una nuova funzione che trovi nella sezione definita dall'utente
    Scusa Dragone, puoi spiegarmi meglio dove trovarla? per i punti precedenti ok, ma a questo punto sono bloccato.

    Grazie e ciao

  8. #8
    L'avatar di elios81
    elios81 non è in linea Scolaretto
    Luogo
    Italy
    Post
    194

    Thumbs up

    Grazie,siete stati molto chiari e disponibili.
    Ho fatto come mi avete detto ed ora Excel dispone di una funzione in più...grazie 1000! Grandi!

  9. #9
    L'avatar di dragone bianco
    dragone bianco non è in linea Moderatore Globale
    Luogo
    Aosta
    Post
    7,731
    Quote Originariamente inviato da MarcoM Visualizza il messaggio
    Scusa Dragone, puoi spiegarmi meglio dove trovarla? per i punti precedenti ok, ma a questo punto sono bloccato.

    Grazie e ciao
    mi riferivo alla finestra delle funzioni di excels (o clicchi su FX oppure Inserisci->Funzione)

    o semplicemente scrivi direttamente nella cella la nuova formula.

    Ciao

  10. #10
    jaz72 non è in linea Novello
    Post
    5

    dubbio..

    Ciao! Intanto grazie per la dritta che mi ha risparmiato un sacco di lavoro..
    Ho però un problema.. pur copiando il file scaricato e installandolo tra i componenti aggiuntivi, quando esco da excel e rientro non trovo più la funzione. Se torno in componenti agiguntivi, il file c'è ma tra le funzioni non appare quella installata. Se sfoglio e riseleziono il file allora riesco a utilizzare nuovamente la funzione.. è normale? succede a qualcun altro?
    ciao e grazie!
    S.

    Quote Originariamente inviato da -gimar- Visualizza il messaggio
    CONVERTITORE NUMERI IN LETTERE
    2006-08-08_151213_NUM2Euro_aggiunta_per_office2000.zip

    INFORMAZIONI PER L'INSTALLAZIONE
    Finito il download, aprire il file zip ed estrarre il file excel, magari estrarlo sul desktop, ora potete fare come volete, ma vi consiglio: Selezionare il file appena estratto e fare tasto destro taglia (o Ctrl+X), lanciare Excel e dal menu Strumenti-Componenti Aggiuntivi pulsante Sfoglia, dovreste essere reindirizzati in una directory Addins, incollate (tasto destro-incolla o Ctrl+V) in questa directory il file precedente, lo selezionate e cliccate ok. Adesso nell'elenco dei componenti installati avrete anche questo con il flag verde (se non dovesse esserci, mettetelo).

    Da questo momento in poi, nel vs. pc (nel senso che se mandate il file altre persone che non hanno installato tale componente le formule non funzioneranno) le funzioni per utilizzare la conversione in lettere sono 2:

    numeroineuro (converte in lettere inserendo /decimali)

    numeroinlettere (converte in lettere senza /decimali)


    spero di esserti stato d'aiuto
    saluti
    gianni

Discussione chiusa
Pagina 1 di 2 12 ultimoultimo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi