Du kan ikke direkte konvertere numre til stavede ord i Excel ved hjælp af en indbygget funktion. Du kan dog opnå dette ved hjælp af en kombination af formler og VBA -kode:
ved hjælp af formler (begrænset til mindre tal):
1. nummer til tekst: Brug funktionen `tekst 'til at konvertere nummeret til tekst. For eksempel '=tekst (10, "0")' vil returnere "10".
2. opslagstabel: Opret en opslagstabel, der indeholder tal og deres tilsvarende stavemåde. Denne tabel skal indeholde alle de numre, du vil konvertere.
3. vlookup: Brug funktionen `Vlookup 'til at slå nummeret op i opslagstabellen og returner den tilsvarende stavemåde. For eksempel vil `=Vlookup (A1, Tabel1,2, falsk)` slå værdien op i celle A1 i tabellen "Tabel1" og returnere værdien i den anden kolonne.
Begrænsninger af formeltilgang:
* begrænset rækkevidde: Denne metode fungerer kun for tal inden for området for din opslagstabel.
* kompleks opsætning: Oprettelse og vedligeholdelse af en stor opslagstabel til alle mulige tal kan være kedelige.
Brug af VBA -kode (mere fleksibel):
1. Åbn VBA -editoren: Tryk på `Alt + F11` for at åbne Visual Basic Editor.
2. Indsæt modul: Indsæt et nyt modul ved at klikke på "Indsæt"> "Modul".
3. Indsæt koden: Indsæt følgende kode i modulet:
`` VBA
Funktion stavnumber (Byval mynummer som dobbelt) som streng
Dim hundreder som streng, titusinder som streng, dem som streng
Dim sted som heltal
'Håndter negative tal
Hvis mynumber <0 så
SpellNumber ="Negativ" &stavetnumber (abs (mynumber))
Afslutningsfunktion
Slut hvis
'Håndter nul
Hvis mynumber =0, så
Stavnumber ="nul"
Afslutningsfunktion
Slut hvis
'Håndternumre større end 999.999.999
Hvis mynumber> 9999999999
Stavnumber ="nummer for stort"
Afslutningsfunktion
Slut hvis
'Opret arrays til nummerstavemåder
Dim Onesarray () som streng
Onesarray =split ("nul, en, to, tre, fire, fem, seks, syv, otte, ni", ",")
Dim TeensArray () som streng
TeensArray =split ("ti, elleve, tolv, tretten, fjorten, femten, seksten, sytten, atten, nitten", ",")
Dim tensArray () som streng
TensArray =split ("Tyve, tredive, fyrre, halvtreds, tres, halvfjerds, firs, halvfems", ",")
'Nedbrydes antallet på dets stedværdier
Sted =1
Hundreder =""
TENS =""
Dem =""
Gør mens mynummer> 0
Vælg sagssted
Sag 1
Ones =Onesarray (MyNumber Mod 10)
Mynumber =int (mynummer / 10)
Sag 2
Hvis mynummer mod 10 =1, så
TENS =TeensArray (MyNumber Mod 100 - 10)
Mynumber =int (mynummer / 100)
Andet
TENS =TensArray (MyNumber Mod 10 - 1)
Mynumber =int (mynummer / 10)
Slut hvis
Sag 3
Hundredvis =Onesarray (MyNumber Mod 10) &"Hundred"
Mynumber =int (mynummer / 10)
Sag 4
Hvis mynummer mod 10 =1, så
TENS =TeensArray (MyNumber Mod 100 - 10)
Mynumber =int (mynummer / 100)
Andet
TENS =TensArray (MyNumber Mod 10 - 1)
Mynumber =int (mynummer / 10)
Slut hvis
Hundredvis =Onesarray (MyNumber Mod 10) &"tusind"
Mynumber =int (mynummer / 10)
Sag 5
Ones =Onesarray (MyNumber Mod 10)
Mynumber =int (mynummer / 10)
Sag 6
Hvis mynummer mod 10 =1, så
TENS =TeensArray (MyNumber Mod 100 - 10)
Mynumber =int (mynummer / 100)
Andet
TENS =TensArray (MyNumber Mod 10 - 1)
Mynumber =int (mynummer / 10)
Slut hvis
Sag 7
Hundredvis =Onesarray (MyNumber Mod 10) &"Hundred"
Mynumber =int (mynummer / 10)
Sag 8
Hvis mynummer mod 10 =1, så
TENS =TeensArray (MyNumber Mod 100 - 10)
Mynumber =int (mynummer / 100)
Andet
TENS =TensArray (MyNumber Mod 10 - 1)
Mynumber =int (mynummer / 10)
Slut hvis
Hundredvis =Onesarray (MyNumber Mod 10) &"Million"
Mynumber =int (mynummer / 10)
Slut vælg
Sted =sted + 1
Loop
'Kombiner stedværdierne i en enkelt streng
Stavnumber =hundreder og titalls og dem
Slutfunktion
`` `
4. Brug funktionen i Excel: I dit Excel -ark kan du bruge funktionen som denne:`=stavebetnummer (A1)`, hvor A1 indeholder det nummer, du vil konvertere.
Fordele ved VBA -tilgang:
* Større antal: Håndterer numre op til 999.999.999.
* Ingen opslagstabel: Ingen grund til at oprette og vedligeholde en opslagstabel.
Bemærk: VBA -kode kræver aktivering af makroer i Excel.
Husk at vælge den tilgang, der bedst passer til dine behov og størrelsen på de numre, du har brug for for at konvertere.