导读:在日常工作中,我们经常会用到Excel表格,而在表格中输入数字后需要将其转换成人民币大写。本文将介绍几个简单易行的技巧,让您在Excel操作上更加得心应手。
1. 内置函数技巧
在Excel中,提供了一个内置函数——“人民币大写”,可以直接将数字转换成人民币大写。
具体操作:
1. 在表格中选取一个单元格,例如A2单元格。
2. 输入数字,例如10000。
3. 在B2单元格中输入以下函数:=人民币大写(A2),然后按回车键。
4. 此时B2单元格中的数据即显示为“壹万元整”。
注意事项:
- 人民币大写函数在Excel2007版本后的所有版本中均可使用。
- 在函数输入时,要保证英文状态下输入函数名及括号。
- 其中A2为需要转换的数字所在单元格。
2. VBA宏技巧
VBA宏是Visual Basic for Applications的简称,它是一种程序语言,可以通过编写代码实现自动化操作。
具体操作:
1. 按下“Alt + F11”进入VBA编辑器。
2. 在编辑器中,选择“插入-->模块”,打开一个新的VBA模块。
3. 在新模块中输入以下代码:
```VBA
Function ChineseNumber(Num As Variant) As String
Dim MyRMB, Yuan, Jiao, Fen As String
Dim LW, XW As Integer
Dim IntNum, Frac As Variant
Dim WS As Integer
Dim MyValue As Variant
LW = 0
Frac = ""
WS = InStr(Num, ".")
If IsNull(WS) Or WS = 0 Then
IntNum = Num
Else
IntNum = Left(Num, WS - 1)
Frac = Mid(Num, WS + 1)
XW = Len(Frac)
If XW = 1 Then
Frac = Frac & "0"
End If
If XW > 2 Then
Frac = Left(Frac, 2)
End If
LW = XW
End If
Yuan = ""
Do While Len(IntNum) > 0
If Len(IntNum) > 4 Then
MyValue = Right(IntNum, 4)
IntNum = Left(IntNum, Len(IntNum) - 4)
Else
MyValue = IntNum
IntNum = ""
End If
WS = Len(MyValue)
MyRMB = ""
Select Case WS
Case 4: MyRMB = MyRMB & getDW(Mid(MyValue, 1, 1)) & "仟"
Case 3
If Mid(MyValue, 1, 1) = "0" And WS = 3 Then
Else
MyRMB = MyRMB & getDW(Mid(MyValue, 1, 1)) & "佰"
End If
Case 2
If Mid(MyValue, 1, 1) = "0" And WS = 2 Then
Else
MyRMB = MyRMB & getDW(Mid(MyValue, 1, 1)) & "拾"
End If
Case 1: MyRMB = MyRMB & getDW(Mid(MyValue, 1, 1))
End Select
If MyRMB <> "" Then
MyRMB = MyRMB & getQFH(WS, LW)
End If
Yuan = MyRMB & Yuan
Loop
If Len(Frac) > 0 Then
Jiao = getDW(Mid(Frac, 1, 1)) & IIf(Mid(Frac, 1, 1) = "0", "", "角")
Fen = getDW(Mid(Frac, 2, 1)) & IIf(Mid(Frac, 2, 1) = "0", "", "分")
End If
If Yuan = "" Then
Yuan = "零元"
Else
Yuan = Yuan & "元"
End If
If Len(Frac) > 0 And Frac <> "00" Then
ChineseNumber = Yuan & Jiao & Fen
ElseIf Len(Frac) > 0 And Frac = "00" Then
ChineseNumber = Yuan & "整"
Else
ChineseNumber = Yuan & "整"
End If
End Function
Function getDW(ByVal Num As String) As String
Select Case Num
Case 0: getDW = "零"
Case 1: getDW = "壹"
Case 2: getDW = "贰"
Case 3: getDW = "叁"
Case 4: getDW = "肆"
Case 5: getDW = "伍"
Case 6: getDW = "陆"
Case 7: getDW = "柒"
Case 8: getDW = "捌"
Case 9: getDW = "玖"
End Select
End Function
Function getQFH(ByVal Num As Integer, ByVal LW As Integer) As String
Select Case Num
Case 1: getQFH = ""
Case 2
Select Case LW
Case 3: getQFH = "万"
Case 7: getQFH = "亿"
End Select
Case 3: getQFH = "万"
Case 4, 5, 6: getQFH = "万"
Case 7: getQFH = "亿"
End Select
End Function
```
4. 在表格中选取一个单元格,例如A2单元格。
5. 然后在B2单元格中输入以下函数:=ChineseNumber(A2),然后按回车键。
6. 此时B2单元格中的数据即显示为“壹万元整”。
注意事项:
- 若不会编写VBA宏,请勿使用本方法。
- 相对于第1种方法,该方法功能更加强大,可以将其它国家的数字转换为汉字。
3. 自定义格式技巧
自定义格式是指用户可以根据需要自行定义数字、日期、字母等数据的显示格式。在Excel中,用户可以利用自定义格式将数字转换成人民币大写。
具体操作:
1. 在表格中选取一个单元格,例如A2单元格。
2. 输入数字,例如10000。
3. 右键点击该单元格,选择“格式单元格”。
4. 在弹出的对话框中,选择“自定义”选项卡。
5. 在“类型”框中输入以下代码:[DBNum2][$-804]#.##0.00。
6. 点击“确定”按钮,即可将数字格式转化为人民币大写。
7. 此时,在A2单元格内输入10000,该单元格将自动显示为“壹万元整”。
注意事项:
- 该方法的缺点是较为繁琐,输入的格式容易出错。
- 输入的格式在不同版本Excel中可能会有所差异。
- 该方法只适用于现有的数字,无法实现自动转换。
总结:
本文介绍了三种将Excel表格中的数字转换成人民币大写的技巧,包括内置函数技巧、VBA宏技巧、自定义格式技巧。其中,内置函数方法简单易行,适用于大多数用户;而VBA宏方法相对较复杂,但是功能更加强大,能够将其它国家的数字转换为汉字;自定义格式方法虽然繁琐,但是可以实现数字的自动转换。用户可根据自己需要选择使用不同的方法。