Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> software >> .

Come si convertono i numeri in alfabeto in Microsoft Excel, ad esempio 10 dieci e 1200 dodicicento?

Non è possibile convertire direttamente i numeri in parole spiegate in Excel usando una funzione integrata. Tuttavia, puoi ottenere questo usando una combinazione di formule e codice VBA:

usando formule (limitate a numeri più piccoli):

1. Numero al testo: Utilizzare la funzione `text` per convertire il numero in testo. Ad esempio, `=text (10," 0 ")` restituirà "10".

2. Tabella di ricerca: Crea una tabella di ricerca contenente numeri e le loro ortografie corrispondenti. Questa tabella dovrà includere tutti i numeri che si desidera convertire.

3. vlookup: Usa la funzione `vlookup` per cercare il numero nella tabella di ricerca e restituire l'ortografia corrispondente. Ad esempio, `=Vlookup (A1, Tabella 1,2, Falso)` cercherà il valore nella cella A1 nella tabella "Tabella 1" e restituirà il valore nella seconda colonna.

Limitazioni dell'approccio della formula:

* Range limitato: Questo metodo funziona solo per i numeri all'interno dell'intervallo della tabella di ricerca.

* Setup complesso: Creare e mantenere una grande tabella di ricerca per tutti i possibili numeri può essere noioso.

usando il codice VBA (più flessibile):

1. Apri l'editor VBA: Premere `alt + f11` per aprire l'editor Visual Basic.

2. Inserisci modulo: Inserisci un nuovo modulo facendo clic su "Inserisci"> "Modulo".

3. Incolla il codice: Incolla il seguente codice nel modulo:

`` `VBA

Function ortnumber (byval mynumber come doppio) come stringa

Dim centinaia come stringa, decine come stringa, quelle come stringa

Luogo fioco come intero

'Gestisci numeri negativi

Se mynumber <0 allora

SpellNumber ="Negative" e Spellnumber (ABS (MyNumber))

Funzione di uscita

Termina se

'Gestisci zero

Se mynumber =0 allora

Spellnumber ="Zero"

Funzione di uscita

Termina se

'Gestire numeri superiori a 999.999.999

Se mynumber> 999999999 allora

Spellnumber ="Numero troppo grande"

Funzione di uscita

Termina se

'Crea array per l'ortografia dei numeri

Dim OthersArray () come stringa

OnesArray =split ("zero, uno, due, tre, quattro, cinque, sei, sette, otto, nove", ")

Dim TeenSarray () come stringa

TeenSarray =split ("dieci, undici, dodici, tredici, quattordici, quindici, sedici, diciassette, diciotto, diciannove", ",")

Dim tensarray () come stringa

Tensarray =split ("venti, trenta, quaranta, cinquanta, sessanta, settanta, ottanta, novanta", ",")

'Abbattere il numero nei suoi valori

Luogo =1

Centinaia =""

Tens =""

One =""

Fare mentre mynumber> 0

Seleziona il luogo del caso

Caso 1

One =OnesArray (MyNumber Mod 10)

Mynumber =int (mynumber / 10)

Caso 2

Se mynumber mod 10 =1 allora

TENS =TeenSarray (MyNumber Mod 100 - 10)

Mynumber =int (mynumber / 100)

Altro

TENS =TENSARDAY (MyNumber Mod 10 - 1)

Mynumber =int (mynumber / 10)

Termina se

Caso 3

Centinaia =OnesArray (Mynumber Mod 10) e "Cento"

Mynumber =int (mynumber / 10)

Caso 4

Se mynumber mod 10 =1 allora

TENS =TeenSarray (MyNumber Mod 100 - 10)

Mynumber =int (mynumber / 100)

Altro

TENS =TENSARDAY (MyNumber Mod 10 - 1)

Mynumber =int (mynumber / 10)

Termina se

Centinaia =OnesArray (Mynumber Mod 10) e "Thousand"

Mynumber =int (mynumber / 10)

Caso 5

One =OnesArray (MyNumber Mod 10)

Mynumber =int (mynumber / 10)

Caso 6

Se mynumber mod 10 =1 allora

TENS =TeenSarray (MyNumber Mod 100 - 10)

Mynumber =int (mynumber / 100)

Altro

TENS =TENSARDAY (MyNumber Mod 10 - 1)

Mynumber =int (mynumber / 10)

Termina se

Caso 7

Centinaia =OnesArray (Mynumber Mod 10) e "Cento"

Mynumber =int (mynumber / 10)

Caso 8

Se mynumber mod 10 =1 allora

TENS =TeenSarray (MyNumber Mod 100 - 10)

Mynumber =int (mynumber / 100)

Altro

TENS =TENSARDAY (MyNumber Mod 10 - 1)

Mynumber =int (mynumber / 10)

Termina se

Centinaia =OnesArray (Mynumber Mod 10) e "milioni"

Mynumber =int (mynumber / 10)

Seleziona end

Luogo =luogo + 1

Ciclo continuo

'Combina i valori del luogo in una singola stringa

Spellnumber =centinaia e decine e quelli

Funzione di fine

`` `

4. Usa la funzione in Excel: Nel tuo foglio Excel, puoi usare la funzione in questo modo:`=Spellnumber (A1)`, dove A1 contiene il numero che si desidera convertire.

Vantaggi dell'approccio VBA:

* Numeri più grandi: Gestisce numeri fino a 999.999.999.

* Nessuna tabella di ricerca: Non c'è bisogno di creare e mantenere una tabella di ricerca.

Nota: Il codice VBA richiede l'abilitazione di macro in Excel.

Ricorda di scegliere l'approccio che si adatta meglio alle tue esigenze e alle dimensioni dei numeri necessari per convertire.

 

software © www.354353.com