Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 12147|回复: 3

判断一个数字是否是小数以及取整数部分。

[复制链接]
发表于 2013-5-29 23:28 | 显示全部楼层 |阅读模式
本帖最后由 silenthunter 于 2013-5-29 23:33 编辑

请教,这两个过程哪个更合理?结果都是一样的。
除了我的方法,还有什么方法能判断一个数字是不是小数?

Private Sub test1()

Dim Money As String
Money = Application.InputBox("输入数字", "输入数字", , , , , , 1)

If Money = False Then
   MsgBox "没有输入数字。"
   Exit Sub
ElseIf InStr(Money, ".") > 0 Then ' 判断输入的数字有没有小数点,大于0表示有小数点。
   Money = Left(Money, InStr(Money, ".") - 1)   ' 有小数点的话取整数部分。
End If

MsgBox Money

End Sub




Private Sub test2()

Dim Money As String
Money = Application.InputBox("输入数字", "输入数字", , , , , , 1)

If Money = False Then
   MsgBox "没有输入数字。"
   Exit Sub
ElseIf Int(Money) <> Money Then ' 取整数后不等于原来的数字,说明这个数是小数。
   Money = Fix(Money)  ' 有小数点的话取整数部分。
End If

MsgBox Money

End Sub

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-5-29 23:45 | 显示全部楼层
回复

使用道具 举报

发表于 2013-5-30 07:10 | 显示全部楼层
你不过就是要取整嘛,有小数你也没有做其它提示,何必还要去判断呢??

直接取就行了嘛

在立即窗口分别使用以下两行代码

  1. ?int(123456)
  2. ?int(123456.123)
复制代码
你会看到程序返回的值都是 123456
这个也正是你需要的“整数”吧,
所以完全没有必要去判断它是不是有小数
回复

使用道具 举报

发表于 2013-5-30 07:13 | 显示全部楼层


11.gif
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-1 18:32 , Processed in 0.286462 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表