在beforeSelChange事件中编写以下代码,目的是为了客户在增加记录后避免某些列的内容为空,但是在执行“同步表”和“筛选”时出错(如图),删除此代码后就回复正常,求解!
图不会上传,写出来:错误代码位置:覆价汇总,beforeselchange
system.indexoutofRangeException: 索引 -3 不是为负数,就是大于行数。
....
'验证新加行是否有缺漏
Dim r1 As Integer = CurrentTable.Rows.Count
Dim Oldr As Integer = e.OldRange.RowSel
Dim newr As Integer = e.newRange.RowSel
If CurrentTable.Rows(oldr).IsNull("初评值") Or oldr = newr Then Return
Dim st As String
If oldr <> newr AndAlso oldr = r1 - 1 '如果当前行改变
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
Dim jc() As String ={"序","初评编号","省","市","区","地址","用途","建筑面积","楼盘小区","进度","接单时间","估价人","委托方类型"}
For Each j As String In jc
If r.Isnull(j) Then st = st & "," & j
Next
If st <> "" Then
e.Cancel = True
st = st.trimstart(",")
messagebox.show(st,"以下信息未填写完整:")
End If
End If
[此贴子已经被作者于2013-4-16 15:18:53编辑过]