如何在excel中直接将A1的数字在B1中直接用英文大写表示
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/16 00:13:00
如何在excel中直接将A1的数字在B1中直接用英文大写表示
麻烦啦,在线等啊,份全部给啦
要翻译成英文哦大写的,比如100,ONE HUNDRED ONLY
麻烦啦,在线等啊,份全部给啦
要翻译成英文哦大写的,比如100,ONE HUNDRED ONLY
ALF+F11 然后点菜单-插入,将以下代码复制到跳出的窗口里:Function NumbToEnglish(ByVal MyNumber) Dim Temp Dim Inte, Dec Dim DecimalPlace, Count ReDim Place(9) As String Place(2) = " Thousand " Place(3) = " Million " Place(4) = " Billion " Place(5) = " Trillion " ' 将数字Mynumber转换成字符串格式,并去掉多余空格 MyNumber = Trim(Str(MyNumber)) ' 查找小数点“.”位置 DecimalPlace = InStr(MyNumber, ".") ' 如果找到小数点... If DecimalPlace > 0 Then ' 转换小数部分 Temp = Len(Mid(MyNumber, DecimalPlace + 1)) Count = 1 Dec = "" Do While Count - 1 <> Temp Dec = Dec & " " & ConvertDecimal(Mid(MyNumber, DecimalPlace + Count, 1)) Count = Count + 1 Loop ' 去掉小数部分,保留剩下的整数部分留做转换 MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If Count = 1 Do While MyNumber <> "" ' 将最后的三位数字转换成英文数字 Temp = ConvertHundreds(Right(MyNumber, 3)) If Temp <> "" Then Inte = Temp & Place(Count) & Inte If Len(MyNumber) > 3 Then ' 如果整数部分大于三位,再向前移动三位数字重复进行转换 MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 Loop ' 增加小数点描述 If Dec = "" Then If Inte = "" Then Dec = "No Number!" End If Else If Inte = "" Then Dec = "Zero Point" & Dec Else Dec = " Point" & Dec End If End If NumbToEnglish = Inte & Dec End Function ' 定义子函数,转换百位数 Private Function ConvertHundreds(ByVal MyNumber) Dim Result As String ' 如果数字为空,退出. If Val(MyNumber) = 0 Then Exit Function ' 在不满三位数的数字前补"0". MyNumber = Right("000" & MyNumber, 3) ' 判断是否有百位数可供转换? If Left(MyNumber, 1) <> "0" Then If Right("000" & MyNumber, 2) <> 0 Then Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred and " Else Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred " End If End If ' 判断是否有十位数可供转换? If Mid(MyNumber, 2, 1) <> "0" Then Result = Result & ConvertTens(Mid(MyNumber, 2)) Else ' 如果没有,转换个位数. Result = Result & ConvertDigit(Mid(MyNumber, 3)) End If ConvertHundreds = Trim(Result) End Function ' 定义子函数,转换十位数 Private Function ConvertTens(ByVal MyTens) Dim Result As String ' 判断数字是否在 10 - 19 之间? If Val(Left(MyTens, 1)) = 1 Then Select Case Val(MyTens) 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 Else End Select Else ' .. 否则,它是介于 20 - 99 之间. Select Case Val(Left(MyTens, 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 Else End Select ' 转换其中的个位数. If Val(Right(MyTens, 1)) = 0 Then Result = Result & " " & ConvertDigit(Right(MyTens, 1)) Else Result = Result & "-" & ConvertDigit(Right(MyTens, 1)) End If End If ConvertTens = Result End Function ' 定义子函数,转换个位数 Private Function ConvertDigit(ByVal MyDigit) Select Case Val(MyDigit) Case 1: ConvertDigit = "One" Case 2: ConvertDigit = "Two" Case 3: ConvertDigit = "Three" Case 4: ConvertDigit = "Four" Case 5: ConvertDigit = "Five" Case 6: ConvertDigit = "Six" Case 7: ConvertDigit = "Seven" Case 8: ConvertDigit = "Eight" Case 9: ConvertDigit = "Nine" Case Else: ConvertDigit = "" End Select End Function ' 定义子函数,转换小数部分 Private Function ConvertDecimal(ByVal MyDecimal) Select Case Val(MyDecimal) Case 1: ConvertDecimal = "One" Case 2: ConvertDecimal = "Two" Case 3: ConvertDecimal = "Three" Case 4: ConvertDecimal = "Four" Case 5: ConvertDecimal = "Five" Case 6: ConvertDecimal = "Six" Case 7: ConvertDecimal = "Seven" Case 8: ConvertDecimal = "Eight" Case 9: ConvertDecimal = "Nine" Case Else: ConvertDecimal = "Zero" End Select End Function Sub bbb()MsgBox NumbToEnglish(123.31)End Sub然后再按ALF+F11,切换回EXCEL窗口,假如100在A1单元格,你在B1单元格输入 =NUMBTOENGLISH(A1) 最后下拉填充即可。
如何在excel中直接将A1的数字在B1中直接用英文大写表示
EXCEL中C1=A1+B1 我在D1中要用A1+B1的和乘以3,我该怎么输入公式,能直接取值?
求在excel表中如何将数字转换成英文货币大写?谢谢!
B1等于A1到A5中任何一数值则B1栏显示红色,B2到B20和B1一样的性质,在EXCEL表格中如何表示
在excel表格中如何将这些混合数字先按读音再按数字大小排列.例如:数字A1,A2,A3---A70,B1,B2----
问个excel的问题 假如a1+b1 结果如何显示在b1里面 就是在B1中输入一个数字能自动和a1加 并显示在b1
EXCEL 查找特定值,用函数如何将A1中的数值 在B1中没有的现示在C1中
在EXCEL中如果A1=B1,C1=B1=A1.A1>B1,C1=B1-(A1-B1).A1
请问在EXCEL中如何让A1显示和B2随机产出的数字对应,A1,A2为1,2也就是盒号,B1为351,373是盒重
在Excel表中,如何将数字小写自动转换成中文大写?
excel中如何将(A1+.+Ai)-(B1+...+Bi)=Ci表示出来啊
在excel中已知a1=b1-(b1×0.05),求b1的公式!