我在网上找到了一个朋友发表的关于将数字大小写的转换过程代码,但不知道怎样才能按照他说的那样另存为加载宏,大家帮我看看。
高人的原代码:
Private Function hhhh(i As Range)
If i.Value >= 1 Then
If Int(i) = i Or Round(i, 2) = Int(i) Then
hhhh = Application.WorksheetFunction.Text(Int(i), "[dbnum2]") & "元整"
ElseIf Int(i * 10) = i * 10 Or Int(i) * 10 = Round(i, 2) * 10 Then
hhhh = Application.WorksheetFunction.Text(Int(i), "[dbnum2]") & "元" & Application.WorksheetFunction.Text(Right(Round(i, 2), 1), "[dbnum2]") & "角整"
Else
hhhh = Application.WorksheetFunction.Text(Int(i), "[dbnum2]") & "元" & Application.WorksheetFunction.Text(Left(Right(Round(i, 2), 2), 1), "[dbnum2]") & "角" & Application.WorksheetFunction.Text(Right(Round(i, 2), 1), "[dbnum2]") & "分"
End If
ElseIf i.Value < 1 And i.Value > 0 Then
If Int(i * 10) = i * 10 Then
hhhh = Application.WorksheetFunction.Text(Right(i, 1), "[dbnum2]") & "角"
Else
hhhh = Application.WorksheetFunction.Text(Left(Right(i, 2), 1), "[dbnum2]") & "角" & Application.WorksheetFunction.Text(Right(i, 1), "[dbnum2]") & "分"
End If
ElseIf i = o Then hhhh = Application.WorksheetFunction.Text(Int(i), "[dbnum2]") & "元"
Else
If Int(i) = i Then
hhhh = "负" & Application.WorksheetFunction.Text(Int(Abs(i)), "[dbnum2]") & "元"
ElseIf Int(i * 10) = i * 10 Or Round(Abs(i), 2) * 10 = Int(Abs(i)) * 10 Then
hhhh = "负" & Application.WorksheetFunction.Text(Int(Abs(i)), "[dbnum2]") & "元" & Application.WorksheetFunction.Text(Right(i, 1), "[dbnum2]") & "角"
Else
hhhh = "负" & Application.WorksheetFunction.Text(Int(Abs(i)), "[dbnum2]") & "元" & Application.WorksheetFunction.Text(Left(Right(Round(i, 2), 2), 1), "[dbnum2]") & "分" & Application.WorksheetFunction.Text(Right(Round(i, 2), 1), "[dbnum2]") & "分"
End If
End If
End Function
具体的操作是,按ALT+F11.打开VBE窗口,"插入"_"模块",将上面的这段代码复制过去
另存为"加载宏",文件名可以取"金额大小写转换"
以后要调用就在EXCEL里,"工具","加项宏","浏览",将它选中,双击即装入了.
它的使用与SUM()等函数一样.
如
A B
1 12345.1=hhhh(a1)结果;壹万贰仟叁佰肆拾伍元壹角整
2 12345.12 =hhhh(a2)壹万贰仟叁佰肆拾伍元壹角贰分
3 12345 =hhhh(a3)壹万贰仟叁佰肆拾伍元整
4 0 =hhhh(a4)零元
5 -12345 =hhhh(a5)负壹万贰仟叁佰肆拾伍元
6 -12345.1 =hhhh(a6)负壹万贰仟叁佰肆拾伍元壹角
7 -12345.12 =hhhh(a7)负壹万贰仟叁佰肆拾伍元壹分贰分
上面就是高人的东东,但我按照他的指令,却找不到另存为的地方。希望大家能够帮助一下哈,谢谢了哟!