以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]大版本升级之后遇到的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=142791) |
-- 作者:81538475 -- 发布时间:2019/11/6 13:11:00 -- [求助]大版本升级之后遇到的问题 全局设置里面Positionchanged 设置。 大版本更新之前没有问题,更新之后出现的问题。 选择任何其中一个表之后,就会崩溃。去掉这个代码就正常。 考勤数据_table1 和 综合奖惩记录表 这两个表的姓名都是唯一值。。 考勤数据_table2的姓名有多个重复值。 不知道是不是这个原因造成的。 If CurrentTable.Name ="考勤数据_table1" Then If Forms("考勤数据").Opened Then With Tables("考勤数据_table2") If .Cols.Contains("姓名") Then Dim r As Integer r = .FindRow("姓名 = \'" & Tables("考勤数据_table1").Current("姓名") &"\'" ) If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. End If End If End With End If Else If CurrentTable.Name ="综合奖惩记录表" Then If Forms("考勤数据").Opened Then With Tables("考勤数据_table1") If .Cols.Contains("姓名") Then Dim r As Integer r = .FindRow("姓名 = \'" & Tables("综合奖惩记录表").Current("姓名") &"\'" ) If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. End If End If End With With Tables("考勤数据_table2") If .Cols.Contains("姓名") Then Dim r As Integer r = .FindRow("姓名 = \'" & Tables("综合奖惩记录表").Current("姓名") &"\'" ) If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. End If End If End With End If End If |
-- 作者:blackzhu -- 发布时间:2019/11/6 13:17:00 -- 这个代码应该没啥问题,但是意义也不是很大 |
-- 作者:有点蓝 -- 发布时间:2019/11/6 13:50:00 -- If Forms("考勤数据").Opened AndAlso e.Table.Current IsNot Nothing Then If e.Table.Name ="考勤数据_table1" Then With Tables("考勤数据_table2") If .Cols.Contains("姓名") AndAlso e.Table.Cols.Contains("姓名") Then Dim r As Integer r = .FindRow("姓名 = \'" & e.Table.Current("姓名") &"\'" ) If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. End If End If End With ElseIf e.Table.Name ="综合奖惩记录表" Then With Tables("考勤数据_table1") If .Cols.Contains("姓名") Then Dim r As Integer r = .FindRow("姓名 = \'" & e.Table.Current("姓名") &"\'" ) If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. End If End If End With End If End If
|
-- 作者:81538475 -- 发布时间:2019/11/6 14:23:00 -- 多谢,可以了 |