分享

人民币小写转大写函数MytoUpper

 L罗乐 2018-03-20

       对于做财务工作的我来说,经常要与资金货币打交道,在填写各种做账凭证的时候,人民币大小写必须匹配、准确。在Excel表格中我们就期望当我输入了小写金额的时候,在特定单元格中能够自动出现其大写金额,这样就能完美匹配大小写金额的一致性了。而小写转大写的函数公式太过复杂,我写了一个简单的自定义函数来解决这个问题。

效果:

代码:

源代码分享:


'小写转大写的自定义函数
Function MytoUpper(sinData As Double) As String
    Dim strResult As String, longPart As Long, sinPart As Single
    strResult = ''
    If sinData = Int(sinData) Then
        strResult = WorksheetFunction.Text(sinData, '[DBNum2]') & '元整'
    Else
        longPart = Int(sinData)   '整数部分
        sinPart = sinData - longPart   '小数部分
        If longPart <> 0 Then
            strResult = WorksheetFunction.Text(longPart, '[DBNum2]') & '元' & _
            WorksheetFunction.Text(Int(sinPart * 10), '[DBNum2]') & '角' & _
            WorksheetFunction.Text(sinPart * 100 Mod 10, '[DBNum2]') & '分'
        Else
            strResult = WorksheetFunction.Text(Int(sinPart * 10), '[DBNum2]') & '角' & _
            WorksheetFunction.Text(sinPart * 100 Mod 10, '[DBNum2]') & '分'
        End If
    End If
    MytoUpper = '人民币 ' & strResult
End Function



如果这个函数你也想能够在你的表格中得以使用的话,就ctrl c复制我的源代码,打开你需要使用这个函数的Excel表格,然后按住“ALT F11”进入VBE编程环境,点击菜单栏上面的“插入”——选择“模块”,再ctrl v粘贴你复制的代码进去,然后将表格保存成.xls或者xlsm格式,那么你这个表格中就自动添加了这样的一个自定义函数了,在需要填充大写金额的单元格写“=MytoUpper(小写金额的单元格)”,那么以后只要更改小写金额单元格中的数值,大写金额就能自动被填充;以后再也不用纠结于写了小写忘改大写的这样的乌龙事件了。




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多