三九宝宝网宝宝百科宝宝知识

请教用VBA把数值转为中文大写

01月03日 编辑 39baobao.com

[excel中怎么用公式提取一段时间内对应的数据的数值比如本月31天]时间在A2:A100,对应数值在B2:B100. D2=IF(INDEX(A:A,(SMALL(IF(($A$2:$A$100>--"2015-1-8")*($A$2:$A$100<--"2015-1-16"),ROW($A$2:$A$100),4^8),ROW(A1))))=0,"",INDEX(A:A,(SMA...+阅读

哦呵呵,这个代码是数字转大写的,不能有小数

Public Function NumberToWord(ByVal Number As Double)

Dim i As Long, j As Long

Dim S_Money As String

Dim D_Location As Long

Dim AfterDot As String

Dim BeforeDot As String

Dim AllString As String

Dim Corner As Long

Dim Separately As Long

Dim T_Str As String

Dim T_Str2 As String

Dim u As String

S_Money = Trim(Str(Number))

D_Location = InStr(1, S_Money, ".")

'小数点后处理

If D_Location Then

T_Str = Right(S_Money, Len(S_Money) - D_Location)

AfterDot = "点"

For i = 1 To Len(T_Str)

AfterDot = AfterDot & NToWord(Val(Mid(T_Str, i, 1)))

Next i

S_Money = Left(S_Money, D_Location - 1)

End If

'整数部分处理

T_Str = ""

j = Len(S_Money)

For i = 1 To Len(S_Money)

T_Str = T_Str & NToWord(Val(Mid(S_Money, i, 1))) & LevelToWord(j)

j = j - 1

Next i

'“零*”筛查

For i = 1 To Len(T_Str) Step 2

If Mid(T_Str, i, 1) = "零" Then

If Mid(T_Str, i + 1, 1) = LevelToWord(5) Or Mid(T_Str, i + 1, 1) = LevelToWord(9) Then T_Str2 = T_Str2 & Mid(T_Str, i + 1, 1)

Else

T_Str2 = T_Str2 & Mid(T_Str, i, 2)

End If

Next i

'“亿万”筛查

BeforeDot = Replace(T_Str2, "亿万", "亿")

If Number = 0 Then BeforeDot = NumberToWord(0)

NumberToWord = BeforeDot & AfterDot

End Function

然后还有两个函数:

Public Function NToWord(ByVal Number As Long)

Select Case Number

Case 0

NToWord = "零"

Case 1

NToWord = "壹"

Case 2

NToWord = "贰"

Case 3

NToWord = "叁"

Case 4

NToWord = "肆"

Case 5

NToWord = "伍"

Case 6

NToWord = "陆"

Case 7

NToWord = "柒"

Case 8

NToWord = "捌"

Case 9

NToWord = "玖"

Case Else

NToWord = ""

End Select

End Function

以下为关联文档:

请高手指教如何在excel中求数值的n次方根是用什么公式呢Excel中有一个“返回给定数字乘幂”的函数POWER()。 当指数是分数时,即是返回给定数字的方根了。 函数括号内有两个参数,第1个是底数,第2个是指数,用逗号隔开。 举例: =POWER(5,2...

阿拉伯数字如何转换成大写的呢=IF(待转换数字或单元格<0,"负","")&IF(TRUNC(ROUND(待转换数字或单元格,2))=0,"",TEXT(TRUNC(ABS(ROUND(待转换数字或单元格,2))),"[DBNum2]")&amp;"点")&IF(ISERR(FIND(".",ROUND(待转换数字或单元...

如何数字变大写在单元格中插入以下公式: =IF(A1<0,"金额为负无效", (IF(OR(A1=0,A1=""),"(人民币)零元", IF(A1<1,"(人民币)", TEXT(INT(A1),"[dbnum2](人民币)G/通用格式")&"元"))))& IF( (INT(A1*10)-INT(A1)*10)=0, IF...

word中怎么把数字直接转换成大写数字1、Alt+F11打开VBA编辑窗口,然后选择菜单项“插入-模块”; 2、在编辑区中粘贴如下代码: Sub ConvertAllNumbers() Selection.Find.ClearFormatting While Selection.Find.Execu...

Excel怎么把数字转换为大写 操作步骤 如果想将Excel单元格中的阿拉伯数字数字转换为中文大写格式,同样可以通过“单元格格式”来设置: 选中需要转换单元格(区域),执行“格式→单元格”命令,打开“单元格格式...

大写字母拼音儿歌一首《字母歌》演唱:小蓓蕾组合 所属专辑:《语文小天才——语文口诀顺口溜31首》 歌词: 6是玻(b) 反6得(d) 一门讷(n) 二门摸(m) 拐棍佛(f) 伞把特(t) 小棍赶猪“勒勒勒”(l) 张口“啊”(a) 鸡...

支票日期是20080430怎么大写急谢谢贰零零捌年零肆月叁拾日 支票的填写方法 1、出票日期(大写):数字必须大写大写数字写法:零、壹、贰、叁、肆、伍、陆、柒、捌、玖、拾。 举例:2005年8月5日:贰零零伍年捌月零伍日捌...

取系统当前日期大写格式去当前日期用函数,today()即可,text()函数转换文本,再用"),在转换成大写即可。 具体如下 =TEXT(TEXT(TODAY(),"YYYY"),"[DBNUM1]0")&"年"&IF(LEFT(TEXT(TEXT(TODAY(),"M"),"[DBNUM1]"),2)="一十",MI...

网易娱乐笔试题在游戏公司有一种职业叫做数值平衡工程师或者序列,用二分法找出需要的元素,设需要找出的元素下标为1,2,3……10。问:要找出第一,第二……第十个元素需要查找几次? 2.makefile文件的作用是什么?管理编译 3.windows操作系统下默...

推荐阅读
图文推荐