以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]加载当天数据时,如果没有会报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=144375)
|
-- 作者:天一生水
-- 发布时间:2019/12/18 12:41:00
-- [求助]加载当天数据时,如果没有会报错
老师好!
有数据时没事,没有数据时报错如下图,用try语句也避免不了,是什么原因?
[日期]列是datatime格式(如:2019-07-02 19:49),数据是access内部数据源。
代码如下: DataTables("邮件管理").LoadFilter = "日期 >= #" & Date.today & "# and 日期 < #" & Date.today.adddays(1) & "#" DataTables("邮件管理").Load()
此主题相关图片如下:截屏图片 (1).jpg
|
-- 作者:有点蓝
-- 发布时间:2019/12/18 13:46:00
--
勾选上面“显示详细信息”看是哪个事件有问题?改正代码
|
-- 作者:天一生水
-- 发布时间:2019/12/18 16:16:00
--
是主表的CurrentChanged事件报错。
用的代码是副本Table之行位置联动,但是看不出什么问题?
If Forms("邮件管理").Opened Then \'如果窗口已经打开 Dim dr As DataRow = e.Table.Current.DataRow Dim wz As Integer = Tables("邮件管理_Table1").FindRow(dr) If wz >=0 Then Tables("邮件管理_Table1").Position = wz End If End If
|
-- 作者:chen37280600
-- 发布时间:2019/12/18 16:20:00
--
dr你要判断是否为空
|
-- 作者:天一生水
-- 发布时间:2019/12/18 16:28:00
--
开始是有判断的,如下,但是也不行。所以就改成帮助中的代码了。
If Forms("邮件管理").Opened Then \'如果窗口已经打开 Dim dr As DataRow = e.Table.Current.DataRow If dr Is Nothing Then Return Else Dim wz As Integer = Tables("邮件管理_Table1").FindRow(dr) If wz >=0 Then Tables("邮件管理_Table1").Position = wz End If End If End If
|
-- 作者:有点蓝
-- 发布时间:2019/12/18 16:29:00
--
If Forms("邮件管理").Opened andalso e.Table.Current isnot nothing Then \'如果窗口已经打开
|
-- 作者:天一生水
-- 发布时间:2019/12/18 16:51:00
--
谢谢蓝老师!
用老师的代码,然后把bin文件夹删除,才行了。
|