您好,
我采用了另外一个方法,直接在报表中编写转换脚本,在单元格中通过 Code.ConvertToRMB()调用:报表模板:
脚本代码:
- Function ConvertToRMB(ByVal inputString As String) As String
- Dim numList As String = "零壹贰叁肆伍陆柒捌玖"
- Dim rmbList As String = "分角元拾佰仟万拾佰仟亿拾佰仟万"
- Dim number As Double = 0
- Dim tempOutString As String = ""
- number = Double.Parse(inputString)
- Dim tempNumberString As String = Convert.ToInt64(number * 100).ToString()
- Dim tempNmberLength As Integer = tempNumberString.Length
- Dim i As Integer = 0
- While i < tempNmberLength
- Dim oneNumber As Integer = Int32.Parse(tempNumberString.Substring(i, 1))
- Dim oneNumberChar As String = numList.Substring(oneNumber, 1)
- Dim oneNumberUnit As String = rmbList.Substring(tempNmberLength - i - 1, 1)
- If Not (oneNumberChar = "零") Then
- tempOutString += oneNumberChar + oneNumberUnit
- Else
- If oneNumberUnit = "亿" OrElse oneNumberUnit = "万" OrElse oneNumberUnit = "元" OrElse oneNumberUnit = "零" Then
- While tempOutString.EndsWith("零")
- tempOutString = tempOutString.Substring(0, tempOutString.Length - 1)
- End While
- End If
- If oneNumberUnit = "亿" OrElse (oneNumberUnit = "万" AndAlso Not tempOutString.EndsWith("亿")) OrElse oneNumberUnit = "元" Then
- tempOutString += oneNumberUnit
- Else
- If Not tempOutString Is Nothing Then
- Dim tempEnd As Boolean = tempOutString.EndsWith("亿")
- Dim zeroEnd As Boolean = tempOutString.EndsWith("零")
- If tempOutString.Length > 1 Then
- Dim zeroStart As Boolean = tempOutString.Substring(tempOutString.Length - 2, 2).StartsWith("零")
- If Not zeroEnd AndAlso (zeroStart OrElse Not tempEnd) Then
- tempOutString += oneNumberChar
- End If
- Else
- If Not zeroEnd AndAlso Not tempEnd Then
- tempOutString += oneNumberChar
- End If
- End If
- End If
- End If
- End If
- i += 1
- End While
- If Not tempOutString Is Nothing Then
- While tempOutString.EndsWith("零")
- tempOutString = tempOutString.Substring(0, tempOutString.Length - 1)
- End While
- While tempOutString.EndsWith("元")
- tempOutString = tempOutString + "整"
- End While
- Return tempOutString
- Else
- Return ""
- End If
- End Function
复制代码
|