我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
很多朋友问到了在Excel中如何将小写的数字金额转换为中文大写的金额,在此,专门开一篇文章介绍这个问题。
实际上,这种数字转换的方法不止一种,在此,主要介绍两种转换方式。第一种,使用公式设定单元格格式,第二种,使用自定义函数。实际效果如下:
那么以下,就来说一下每种方式的具体操作过程。
第一种方式:使用公式
这种方式最为简单,不需要任何设定,只需要在目标单元格写入公式即可,以上图为例,在B2单元格写入如下公式即可:
=IF(INT(B1)=B1,TEXT(INT(B1),"[dbnum2]G/通用格式元整;;"),TEXT(INT(B1),"[dbnum2]G/通用格式元;;") & TEXT(RIGHT(RMB(B1,2),2),"[dbnum2]0角0分;;整"))
大体意思就是,把数据分成两部分来观测,第一部分为为整数,第二部分为小数,判断在不同情况下按照不同的自定义格式输出。
第二种方式:使用自定义函数
在VBA编辑器中插入一个模块,写入如下代码:
Public Function N2RMB(Number As Double) As String
If IsNull(Number) = True Then
N2RMB = "0"
Exit Function
End If
Dim j, k, l, last As Integer
Dim n As Double
Dim C1, C2, X As String
C1 = "零壹贰叁肆伍陆柒捌玖"
C2 = "分角元拾佰仟万拾佰仟亿拾佰"
last = 1
n = Round(Abs(Number), 2) * 100
l = Len(CStr(n))
last = 1
For j = 1 To Len(CStr(n))
'k为右边算起的第j位的数字
k = Mid(n, Len(CStr(n)) + 1 - j, 1)
If k > 0 Then
X = Mid(C1, k + 1, 1) & Mid(C2, j, 1) & X
last = 1
Else
Select Case j
Case 1
Case 3
X = "元" & X
Case 7
If Len(CStr(n)) < 11 Then
X = "万" & X
Else
If Mid(CStr(n), Len(CStr(n)) - 9, 4) <> "0000" Then
X = "万" & X
End If
End If
Case 11
X = "亿" & X
Case Else
If last = 1 Then
X = "零" & X
End If
End Select
last = 0
End If
If j = 2 And Right(n, 2) = 0 Then
X = X & "整"
End If
Next j
N2RMB = X
End Function
以上代码定义了一个全局自定义函数N2RMB()。调用该函数,可以直接把Excel单元格内部数据转化为中文的大写金额。
以开头的图片为例,用法如下:
在B3单元格输入:N2RMB(B1)即可。可以看到,此时函数提示里面已经自动把该自定义函数给列出来了。
比较以上两种方式,各有优劣。如果在单元格简单的数据转化上,那么使用公式比较省事。但如果涉及到复杂的输出,那么公式就会比较冗长,很容易出错。使用自定义函数的话工作簿需要保存为启用宏的工作簿,很多地方可能会被阻止,但用起来非常简洁。
相关文章
我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
在工作中,可能许多朋友都会碰到一个情况,那就是工作簿和工作表数据的合并操作。如何将上百个工作簿快速合并到一个表格中,许多朋友可能会觉得不可思议。今天我们就来教大家学习一......
2023-01-08
今天在这里为你分享5个Excel文本函数,这些拆分和组合函数,你一定会用上的。①LEFT函数公式:=LEFT(A2,1)在Excel表格中,需要想要拆分汉字,想从哪里开始就从那哪里开始。首先选定单元格......
2023-01-08
相信大家也和我一样,才开始看到Excel可以当做翻译软件的时候会很好奇,这究竟是怎样做到的?其实,这个方法并不是很难,它是由一个函数公式而制作出来的,好了,首先我们一起来看看成......
2023-01-08
函数可以说是所用快捷方法中最为简单的一种方法,为什么很多人认为函数用起来很难了?主要是因为它拥有很长的函数公式,记不住。其实不管是学Excel函数,还是学习其他的一些快捷方法......
2023-01-08