代码没问题,报什么错?如果你选中的是数值列、日期列、逻辑列(非字符列),有可能报错,这个时候改成
Dim Val As String = 2 = e.Form.Controls("cbx")Dim Index As IntegerWith CurrentTable Index = .FindRow("convert(" & .Cols(.ColSel).Name & ",'System.String') = '" & Val & "'", .Position + 1,True) If Index >= 0 Then .Position = Index End IfEnd With