以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]完善删除行公式,拜托  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=11724)

--  作者:yanzhen2010
--  发布时间:2011/8/9 11:28:00
--  [求助]完善删除行公式,拜托

If Tables("长期医嘱").GetCheckedRows.count<1
MessageBox.Show("请选择要删除的行",64, "提示")
End If
Dim Result As DialogResult
Result = MessageBox.Show("确定删除吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
If Result = DialogResult.OK And If Tables("长期医嘱").GetCheckedRows=True Then
    For Each r As Row In Tables("长期医嘱").GetCheckedRows
        r.Delete
    Next
Else
    Tables("长期医嘱").ClearCheckedRows
End If

 

问题出现在标为红色的代码。想在删除前先判断一下是否选择了行。


--  作者:狐狸爸爸
--  发布时间:2011/8/9 11:33:00
--  

If Tables("长期医嘱").GetCheckedRows.count<1
     MessageBox.Show("请选择要删除的行",64, "提示")

     Return
End If


--  作者:yanzhen2010
--  发布时间:2011/8/9 11:48:00
--  
以下是引用狐狸爸爸在2011-8-9 11:33:00的发言:

     MessageBox.Show("请选择要删除的行",64, "提示")

     Return
End If

谢谢老总,经测试这段代码有错误!If Tables("长期医嘱").GetCheckedRows.count<1


--  作者:狐狸爸爸
--  发布时间:2011/8/9 11:51:00
--  

测试没事


--  作者:yanzhen2010
--  发布时间:2011/8/9 15:12:00
--  
以下是引用狐狸爸爸在2011-8-9 11:51:00的发言:

测试没事

问题还是存在的,但解决了,原来是MsgBox和MessageBox的问题

 

If Tables("长期医嘱").GetCheckedRows.count<1
    MsgBox("请选择需要删除的行!",64,"提示")    修改后
    Return
End If
Dim Result As DialogResult
Result = MessageBox.Show("确定删除吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
If Result = DialogResult.OK Then
    For Each r As Row In Tables("长期医嘱").GetCheckedRows
        r.Delete
    Next
Else
    Tables("长期医嘱").ClearCheckedRows
End If

谢谢老总支持!