以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  单元格多选一录入  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=170249)

--  作者:15666282205
--  发布时间:2021/7/18 15:05:00
--  单元格多选一录入
老师,表里的AB两列,如果在当前行中A有值,则B列不能录入数据并提示“A列已有值”;反之B列同样功能,请您指导。
--  作者:有点蓝
--  发布时间:2021/7/18 20:55:00
--  
StartEdit事件

If e.Col.Name = "B" AndAlso e.row.isnull("A") = false Then
    e.Cancel = 
True \'取消编辑
    Messagebox.Show(
"
A列已有值!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
End
 
If

--  作者:15666282205
--  发布时间:2021/7/20 8:55:00
--  
非常好,谢谢老师!
--  作者:15666282205
--  发布时间:2021/12/5 11:27:00
--  
老师,2楼的代码在控制从表里直接录入数据的时候管用,我还有一个表是用代码录入数据的,代码在按钮的CLICK中,就不行了。我改造了一下代码,提示第一行代码错误。请您指导。
\'-----------------------判读重复----------------------------
If e.Col.Name = "D5_大班" AndAlso e.Row.isnull("D5_休班") = False Then
        Messagebox.Show("提示:已考休班!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
    \'------------------批量填充----------------------
    Dim t As Table = Tables("当月考勤表2")
    For i As Integer = t.TopRow To t.BottomRow
        For j As Integer = t.LeftCol To t.RightCol
            If t.Rows(i).IsNull(t.Cols(j).Name) Then
                t.Value(i,j) = "0.5"
            End If
        Next
    Next
End If

--  作者:有点蓝
--  发布时间:2021/12/5 20:54:00
--  
Dim t As Table = Tables("当月考勤表2")
dim r as row = t.current
if r is nothing then return
If r.isnull("D5_休班") = False Then
        Messagebox.Show("提示:已考休班!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
    \'------------------批量填充----------------------
    For i As Integer = t.TopRow To t.BottomRow
        For j As Integer = t.LeftCol To t.RightCol
            If t.Rows(i).IsNull(t.Cols(j).Name) Then
                t.Value(i,j) = "0.5"
            End If
        Next
    Next
End If