以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  单元格样式问题(请帮帮忙呀)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=6107)

--  作者:wqc360
--  发布时间:2010/3/6 9:04:00
--  单元格样式问题(请帮帮忙呀)
请问见附件,怎样实现“周期工时”列的单元格颜色或箭头绘制,条件为“周期工时”>“工作时间”*60/“加工数量”。
先谢谢了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目22.table

[此贴子已经被作者于2010-3-6 12:11:43编辑过]

--  作者:程兴刚
--  发布时间:2010/3/6 9:32:00
--  
贺老师不是给了一个示例文件吗?
--  作者:wqc360
--  发布时间:2010/3/6 9:42:00
--  
只在帮助中找到:

最后在DrawCell事件中设置如下代码:

\'如果是数值型列,且不是总分列
If
e.Col.IsNumeric AndAlso e.Col.Name <> "总分" Then
    If
e.Row.IsNull(e.Col.Name) = False \'且该列已经输入内容
       
If e.Row(e.Col.Name) < 60 Then \'如果该列的值小于60
            e.Style =
"不及格" \'那么用"不及格"样式绘制单元格
       
ElseIf e.Row(e.Col.Name) > 95 Then \'如果单元格的值大于95
            e.Style =
"优秀" \'那么用"优秀"样式绘制单元格
       
End If
    End
If
End
If

套用不了
示范文件没找到呀,请提示一下


--  作者:wqc360
--  发布时间:2010/3/6 9:42:00
--  
条件是表达式不知怎么用
--  作者:wqc360
--  发布时间:2010/3/6 10:40:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目22.table

If e.Col.IsNumeric AndAlso e.Col.Name = "周期工时" Then
    If e.Row.IsNull(e.Col.Name) = False \'且该列已经输入内容
        If e.Row(e.Col.Name) > 60 Then \'如果该列的值小于60
            e.Style = "样式1" \'那么用"不及格"样式绘制单元格
        End If
    End If
End If

怎样把条件改成以下:
If e.Col.IsNumeric AndAlso e.Col.Name = "周期工时" Then
    If e.Row.IsNull(e.Col.Name) = False \'且该列已经输入内容
          If e.Row(e.Col.Name) > "工作时间"*60/"加工数量" Then
            e.Style = "样式1" \'那么用"不及格"样式绘制单元格
        End If
    End If
End If

--  作者:mr725
--  发布时间:2010/3/6 18:17:00
--  
照葫芦画瓢啊:
If e.Col.IsNumeric AndAlso e.Col.Name = "周期工时" Then
    If e.Row.IsNull("周期工时") = False
        If e.Row("周期工时") > e.Row("工作时间")*60/e.Row("加工数量") Then
            e.Style = "样式1"
        End If
    End If
End If

--  作者:wqc360
--  发布时间:2010/3/6 18:23:00
--  
谢谢您:mr725兄,总算看到效果了。
[此贴子已经被作者于2010-3-6 18:23:48编辑过]