Indholdsfortegnelse:
Video: Excel - Manipulering af tekst 1 2024
Hvis du nogensinde har brug for at vise et nummer skrevet ud som tekst, har du sikkert opdaget, at Excel ikke tilbyder en sådan funktion. Når Excel ikke leverer, er det ofte muligt at rette fejlen ved at bruge VBA. Her er en VBA-funktion, der hedder SPELLDOLLARS, som du kan bruge i regnearkformler.
Excel eksempler
Her er nogle eksempler på SPELLDOLLARS.
VBA-koden
Hvis du vil bruge denne kode, skal du trykke på Alt + F11 for at aktivere Visual Basic Editor. Vælg derefter Indsæt → Modul for at indsætte et nyt VBA-modul. Kopier koden og indsæt den i det nye modul.
Funktion SPELLDOLLARS (celle) Som variant 'Returnerer en værdi, stavet ud i ord Dim dollar Som streng, Cents As String Dim TextLen så lang, Pos så lang Dim Temp som String Dim iHundreds så længe, det er lige så lang tid, som As Lange dim som Variant, Teens Som Variant, Tens Som Variant Dim Enheder (2 til 5) Som String Dim BHit Som Boolean, NegFlag Som Boolean Er det et ikke-nummer eller en tom celle? Hvis ikke IsNumeric (celle) Eller celle = "" Så SPELLDOLLARS = CVErr (xlErrValue) Afslut Funktion Slut Hvis 'Er det negativt? Hvis celle 15 Derefter SPELLDOLLARS = CVErr (xlErrNum) Afslut Funktion Slut Hvis 'Gør cent del Cents = Højre (Dollars, 2) & "/ 100 Dollars" Hvis celle = Pos - 2 Så bHit = False Hvis TextLen> = Pos Then iHundreds = Asc (Mid $ (Dollars, TextLen - Pos + 1, 1)) - 48 Hvis iHundreds> 0 Så Temp = Temp & "" & Ones (iHundreds) & "Hundred" bHit = True End Hvis End Hvis iTens = 0 iOnes = 0 Hvis TextLen> = Pos - 1 Så iTens = Asc (Mid $ (Dollars, TextLen - Pos + 2, 1)) - 48 Afslut Hvis Hvis TextLen> = Pos - 2 Then IOnes = Asc (Mid $ (Dollars, TextLen - Pos + 3, 1)) - 48 Afslut Hvis Hvis iTens = 1 Så Temp = Temp & "" & Teens (iOnes) bHit = True Else Hvis iTens> = 2 Så Temp = Temp & "" & Tens (iTens) bHit = True End Hvis Hvis IOnes> 0 Så Hvis iTens> = 2 Så Temp = Temp & "-" Else Temp = Temp & "" Afslut Hvis Temp = Temp & Ones (iOnes) bHit = True End Hvis Afslut Hvis Hvis bHit Og Pos > 3 Så Temp = Temp & "" & Enheder (Pos 3) Slut Hvis Slut Hvis Næste Pos SPELLDOLLARS = Trim (Temp) & "Og" & Cent Hvis NegFlag SPELLDO LLARS = "(" & SPELLDOLLARS & ")" Slutfunktion