Foxtable(狐表)用户栏目专家坐堂 → [求助]如何让double列显示为空?


  共有1989人关注过本帖树形打印复制链接

主题:[求助]如何让double列显示为空?

帅哥哟,离线,有人找我吗?
pladic
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:225 积分:2015 威望:0 精华:0 注册:2015/12/23 11:59:00
[求助]如何让double列显示为空?  发帖心情 Post By:2016/9/30 17:09:00 [只看该作者]

从excel表中手动导入到狐表的double列,如果execl表的单元格为空,怎样使狐表的列值也显示为空而不是0?

我的代码是:
if sheet.(n,m).value="" then
s("金额")=nothing
else
s("金额")=sheet.(n,m).value
endif

报错为:从字符串“ ”到类型“Double”的转换无效。

如何表示金额列的值等于空白?
[此贴子已经被作者于2016/9/30 17:12:47编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/30 17:26:00 [只看该作者]

单元格里有空格吧,试试

If sheet.(n,m).value.trim() ="" Then
    
    s("金额")=Nothing
Else
    
    s("金额")=sheet.(n,m).value
End If

 回到顶部
帅哥哟,离线,有人找我吗?
pladic
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:225 积分:2015 威望:0 精华:0 注册:2015/12/23 11:59:00
回复:(有点蓝)单元格里有空格吧,试试If sheet.(n,...  发帖心情 Post By:2016/10/8 10:19:00 [只看该作者]

试过了,不行。
用 .length<>0 也不行。

实际情况就是:
在excel表中,有金额列。如果没有实际金额就按回车或直接用鼠标点到其它列。
在狐表中,金额列设为double类。

现状,如excel表中金额列有>=0的值时,可以正常导入。
如excel表中金额列为空时,就报错:从字符串“ ”到类型“double”的转换无效。

卡在这了,求专家老师们指点!!!



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/8 10:32:00 [只看该作者]

Dim je As Double = Val(sheet.(n,m).value)

If je = 0 Then
    
    s("金额")=Nothing
Else
    
    s("金额")=je
End If

 回到顶部
帅哥哟,离线,有人找我吗?
pladic
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:225 积分:2015 威望:0 精华:0 注册:2015/12/23 11:59:00
回复:(有点蓝)Dim je As Double = Val(sheet.(n,m)...  发帖心情 Post By:2016/10/8 10:52:00 [只看该作者]

这样也不行。
还试了 if isnumeric(sheet(n,m).value) then 
s("金额")=sheet(n,m).value
else
s("金额")=nothing
endif

也不行。

可否先将excel表金额单元格的值,赋给一个字符型变量,对这个字符型变量判断长度为0或值为空?
 

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/8 10:54:00 [只看该作者]

看4楼

 回到顶部
帅哥哟,离线,有人找我吗?
pladic
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:225 积分:2015 威望:0 精华:0 注册:2015/12/23 11:59:00
回复:(有点蓝)看4楼  发帖心情 Post By:2016/10/8 11:06:00 [只看该作者]

4楼的方法试了,不行。

dim je as string =sheet(n,m).vlaue
if je.length=0 then  或者 if je.trim()="" then
s("金额")=nothing
else
s("金额")=val(je)
endif

这样也报同样的错
[此贴子已经被作者于2016/10/8 11:08:22编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/8 11:23:00 [只看该作者]

用4楼代码,测试没有问题

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/8 11:23:00 [只看该作者]

不行就上例子测试

 回到顶部