AfterSelChange

选择不同的单元格后执行,也就是表的RowSelColSel属性发生变化后执行。

e参数属性: 

Table:   引发事件的Table
OldRange:CellRange类型,表示操作前选定的区域
NewRange: CellRange 类型,表示操作后选定的区域

示例一

如果希望选择某些列的时候,单元格能自动进入编辑状态,可以参考下面的代码:

Dim c As Col = e.Table.Cols(e.NewRange.ColSel)

Select Case c.name

    Case "列名一","列名二","列名三","列名四"

        e.Table.StartEditing()

End Select

 

显然,如果希望选择任何列,单元格都能自动进入编辑状态,只需将代码设置为:

 

e.Table.StartEditing()

示例二

如果希望换行后,能够自动保存之前选定的行:

If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
    If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
       
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
        r.Save()
'保存之
   
End If
End
If

示例三

为了在状态行显示单元格位置,可将本事件的代码设为:

With e.Table
    StatusBar.Message1 =
"第" & .RowSel & "行 第" & .ColSel & "列"
End
With


本页地址:http://www.foxtable.com/webhelp/topics/0645.htm