以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  拷贝的问题和Excel的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=780)

--  作者:kylin
--  发布时间:2008/10/6 14:20:00
--  拷贝的问题和Excel的问题
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子.part01.rar

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子.part02.rar

原来的项目保留了一些数据,SQL Server改成Access的,折腾了一段时间,终于做好了。


--  作者:kylin
--  发布时间:2008/10/6 14:21:00
--  
第一个问题——拷贝问题,打开项目,如下3个图操作,会有错误提示,按ESC键直到提示消失,拷贝也完成了,数据正确,

图片点击可在新窗口打开查看此主题相关图片如下:01-01.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:01-02.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:01-03.jpg
图片点击可在新窗口打开查看

--  作者:kylin
--  发布时间:2008/10/6 14:23:00
--  
第二个问题——Excel报表问题,打开项目,如下2个图操作,会有错误提示,报表出不来

定位到第2行(已经确定的纪录)

图片点击可在新窗口打开查看此主题相关图片如下:02-01.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:02-02.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2008-10-6 14:24:21编辑过]

--  作者:贺老六
--  发布时间:2008/10/6 15:27:00
--  

既然提示DatacolChanged事件代码有误,就去哪里查找.
我至少在三个表的的DataColChanged发现四处这样的代码:

 Dim dr As DataRow = e.Datarow.GetParentrow("bjd") \'为了在表中有效 **当窗口1没有打开的话,那么就视为在表中录入
dr("bj")=sum1+sum2
Tables("bjd").Refresh()  \'汇总产生:没有这条只能在bdmx表有效,加上本条后,在bjd表中也有效,仅如此的话,窗口的控件不会随变

正确的应该是:

  Dim dr As DataRow = e.Datarow.GetParentrow("bjd") \'为了在表中有效 **当窗口1没有打开的话,那么就视为在表中录入
   if dr isnot nothing then
        dr("bj")=sum1+sum2
        Tables("bjd").Refresh()  \'汇总产生:没有这条只能在bdmx表有效,加上本条后,在bjd表中也有效,仅如此的话,窗口的控件不会随变
   end if

呵呵,其实这个错误,你之前已经犯过,也是我帮你搞定的啊

[此贴子已经被作者于2008-10-6 15:27:28编辑过]

--  作者:贺老六
--  发布时间:2008/10/6 15:34:00
--  
哈哈,第二个问题有点离谱啊:

Dim Book As New XLS.Book(ProjectPath & "Attachments\\bjd1.xls")

其实应该是:

Dim Book As New XLS.Book(ProjectPath & "Attachments\\bj1.xls")

注意到你原来的文件名错了吗?

--  作者:kylin
--  发布时间:2008/10/6 17:31:00
--  
惭愧,有时候就会“爱犯这个经典的臭毛病”,见笑了!
多谢老六!
马上修改去!

解除了多天的“心病”,舒畅着呢,再次谢谢老六!
[此贴子已经被作者于2008-10-6 18:04:30编辑过]