以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]如何实现绘制 超范围 显示  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=125807)

--  作者:vxzx
--  发布时间:2018/10/7 17:02:00
--  [求助]如何实现绘制 超范围 显示
公司产品标准比较多,如果按照 下边的代码一个一个产品的在 “A表”中 Drawcell设置,工作量太大,
Case "筛分_60目筛分"
    If e.Row("配方名称")="产品A" Then
      If e.Row.IsNull(e.Col.Name) = False 
         If e.Row("筛分_60目筛分")<5 Or e.Row("筛分_60目筛分")>15 Then
            e.Style = "不合格"
     End If
       End If
          End If
    If e.Row("配方名称")="产品B" Then
      If e.Row.IsNull(e.Col.Name) = False 
         If e.Row("筛分_60目筛分")<20 Or e.Row("筛分_60目筛分")>35 Then
            e.Style = "不合格"
     End If
       End If
          End If

能不能在"B表"内把标准建好,然后再引到"A表"中,代码怎么打,以下是我的错误代码,没学过0基础不要笑啊,如果明白我的意思的,请高手帮我,谢谢。
Case "筛分_60目筛分"
  If e.Row.IsNull(e.Col.Name) = False
dt = DataTables("检测项目列表").Find("[成品检测标准_配方名称] = \'" & e.Row("配方名称") & "\'")
If dt IsNot Nothing Then 
    If e.Row(筛分_60目筛分) < e.Table("B表").Row("成品检测标准_60目筛分最低值")  Then
        e.Style = "不合格"
    End If
End If
End If







--  作者:有点蓝
--  发布时间:2018/10/7 17:25:00
--  
请上传具体项目测试,不知道你设置的数据是怎么样的,无法处理
--  作者:vxzx
--  发布时间:2018/10/7 17:48:00
--  
【如果“A表”“B列”数值小于"C表"“D列”】,这句话用代码如何表达,谢谢。
--  作者:vxzx
--  发布时间:2018/10/8 8:26:00
--  
意思是,“A表”录入的产品所对应的60目筛分,以“B表”的标准范围判定是否合格,合格标成绿色,不合格标成红色。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1.rar


--  作者:有点甜
--  发布时间:2018/10/8 8:37:00
--  
If e.Col.name = "筛分60目" Then
    If e.Row.IsNull(e.Col.Name) = False
        Dim dr = DataTables("表B").Find("产品列表 = \'" & e.Row("产品") & "\'")
        If dr IsNot Nothing Then
            If val(e.Row("筛分60目")) < val(dr("筛分60目标准_最低值")) OrElse val(e.Row("筛分60目")) > val(dr("筛分60目标准_最高值")) Then
                e.Table.DataTable.AddUserStyle("不合格", Color.red, Color.black)
                e.Style = "不合格"
            End If
        End If
    End If  
End If