如何在 Excel 中将数值转换为英文单词
本文包含 Microsoft Visual Basic for Applications 函数示例,您可以使用这些函数将 Microsoft Excel 工作表单元格中的数值转换为等效的英文单词。
创建名为 SpellNumber 的示例函数
(01)启动 Microsoft Excel-----按 Alt+F11 启动 Visual Basic 编辑器-----在“插入”菜单上,单击“模块”
(02)在模块表中键入下面的代码
(03)Option Explicit'Main FunctionFunction SpellNumber(ByVal MyNumber)Dim Dollars, Cents, TempDim DecimalPlace, CountReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion "' String representation of mber = Trim(Str(MyNumber))' Position of decimal place 0 if malPlace = InStr(MyNumber, ".")' Convert cents and set MyNumber to dollar DecimalPlace > 0 ThenCents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))End IfCount = 1Do While MyNumber <> ""Temp = GetHundreds(Right(MyNumber, 3))If Temp <> "" Then Dollars = Temp & Place(Count) & DollarsIf Len(MyNumber) > 3 ThenMyNumber = Left(MyNumber, Len(MyNumber) - 3)ElseMyNumber = ""End IfCount = Count + 1LoopSelect Case DollarsCase ""Dollars = "No Dollars"Case "One"Dollars = "One Dollar"Case ElseDollars = Dollars & " Dollars"End SelectSelect Case CentsCase ""Cents = " and No Cents"Case "One"Cents = " and One Cent"Case ElseCents = " and " & Cents & " Cents"End SelectSpellNumber = Dollars & CentsEnd Function ' Converts a number from 100-999 into text Function GetHundreds(ByVal MyNumber)Dim Result As StringIf Val(MyNumber) = 0 Then Exit FunctionMyNumber = Right("000" & MyNumber, 3)' Convert the hundreds Mid(MyNumber, 1, 1) <> "0" ThenResult = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "End If' Convert the tens and ones Mid(MyNumber, 2, 1) <> "0" ThenResult = Result & GetTens(Mid(MyNumber, 2))ElseResult = Result & GetDigit(Mid(MyNumber, 3))End IfGetHundreds = ResultEnd Function ' Converts a number from 10 to 99 into text. Function GetTens(TensText)Dim Result As StringResult = "" ' Null out the temporary function Val(Left(TensText, 1)) = 1 Then ' If value between ct Case Val(TensText)Case 10:Result = "Ten"Case 11:Result = "Eleven"Case 12:Result = "Twelve"Case 13:Result = "Thirteen"Case 14:Result = "Fourteen"Case 15:Result = "Fifteen"Case 16:Result = "Sixteen"Case 17:Result = "Seventeen"Case 18:Result = "Eighteen"Case 19:Result = "Nineteen"Case ElseEnd SelectElse ' If value between ct Case Val(Left(TensText, 1))Case 2:Result = "Twenty "Case 3:Result = "Thirty "Case 4:Result = "Forty "Case 5:Result = "Fifty "Case 6:Result = "Sixty "Case 7:Result = "Seventy "Case 8:Result = "Eighty "Case 9:Result = "Ninety "Case ElseEnd SelectResult = Result & GetDigit _(Right(TensText, 1)) ' Retrieve ones IfGetTens = ResultEnd Function ' Converts a number from 1 to 9 into text. Function GetDigit(Digit)Select Case Val(Digit)Case 1:GetDigit = "One"Case 2:GetDigit = "Two"Case 3:GetDigit = "Three"Case 4:GetDigit = "Four"Case 5:GetDigit = "Five"Case 6:GetDigit = "Six"Case 7:GetDigit = "Seven"Case 8:GetDigit = "Eight"Case 9:GetDigit = "Nine"Case Else:GetDigit = ""End SelectEnd Function
(04)关闭即可
使用 SpellNumber 示例函数
(01)方法 1:直接输入通过将下面的公式输入单元格中,可以将 32.50 更改为“Thirty Two Dollars and Fifty Cents”:=SpellNumber(32.50)
(02)方法 2:单元格引用可以引用工作簿中的其他单元格。例如,在单元格 A1 中输入数字 32.50,然后在另一单元格中键入下面的公式:=SpellNumber(A1)
(03)方法 3:插入函数Excel 2003:选择所需的单元格。单击“常用”工具栏中的“插入函数”。在“或选择类别”下,单击“用户定义”。在“选择函数”列表中,单击“SpellNumber”,然后单击“确定”。输入所需的数字或单元格引用,然后单击“确定”。Excel 2007 和 2010:选择所需的单元格。单击“公式”功能区上的“插入函数”。在“或选择类别”下,单击“用户定义”。在“选择函数”列表中,单击“SpellNumber”,然后单击“确定”。输入所需的数字或单元格引用,然后单击“确定”。
(04)如图
-
公共场所卫生许可证办理
依据《公共场所卫生管理条例》,应办理卫生许可证的公共场所有:(一)宾馆、饭馆、旅店、招待所、车马店、咖啡馆、酒吧、茶座;(二)公共浴室、理发店、美容店;(三)影剧院、录像厅(室)、游艺厅(室)、(歌)舞厅、音乐厅;(四)体育场(馆)、游泳场(馆)、公园;(五)展览馆、博物馆、美术馆、图书馆;(六...
-
苹果Mac电脑如何快速返回桌面
windows系统电脑都有快捷键可以一键返回桌面,或者任务栏右下角都可以返回桌面,但苹果mac电脑的快捷键或者用触摸板滑动会麻烦一些。那么有没有一种最方便的方法,鼠标指针直接移到某个位置,就可以快速返回桌面呢操作方法(01)从启动台中找到“系统偏好设置”,并打开;(02)选...
-
低压电工实际操作,三相电机的正反转控制
低压电工实际操作的一项重要项目:三相电机的正反转控制。想实现电机的正反转,只需要对调三相电源的两根线路就可以实现。这样控制电路需要两个交流接触器来实现,电机的电源的相序切换。为了实现互锁和将接触器的常闭触点串接到电路中。操作方法(01)看懂原理图:分为主...
-
如何跳出舒适圈
人们这么努力工作,就是为了生活过得舒适。所谓苦尽甘来,就是这个意思。不过,在实现大目标的过程中,每完成一个阶段小目标,我们的生活就会改善一些,精神也会满足一些,即生活暂时处于舒适状态。那么,留恋片刻后,如果再不及时跳出安乐窝,勇攀高峰,那就无异于温水煮娃。然而,就...