Office中国论坛/Access中国论坛

标题: 如何自定义函数对满足条件的单元格填充颜色 [打印本页]

作者: funhere    时间: 2008-12-31 15:02
标题: 如何自定义函数对满足条件的单元格填充颜色
[attach]34169[/attach]

我想利用自定义函数(FUNCTION)放在C列下面,以实现:自动计算出[在途时间]填写在C列中,同时当[在途时间]([当到达时间]— [发车时间])大于[在途标准]的时候,C列中的单元格会自动显示为红底黄字。

Function ZTSJ(FCSJ, DDSJ, ZTBZ)
ZTSJ = (DDSJ - FCSJ) * 24
If ZTSJ > ZTBZ Then Target.Interior.ColorIndex = 3
End Function
这是我自己设计的自定义函数,但是它只能把[在途时间]计算出来,对于[在途时间]超过[在途标准]的数据并不会把单元格填充为红色
请高手指点啊!
作者: funhere    时间: 2008-12-31 15:21
有人知道吗?
作者: 方漠    时间: 2008-12-31 15:50
试试条件格式.
作者: funhere    时间: 2008-12-31 15:55
由于各种原因,不想采用条件格式。
1、有很多类似的表,每个表都到条件格式里设置一下,比我拷贝一段代码麻烦很多
2、条件格式无法实现与现有表格中某单元格数据进行比较,然后设置格式的功能
3、如果条件变了(在途标准变化了),条件格式日后的维护也比较麻烦
作者: 方漠    时间: 2008-12-31 16:11
你的函数里,没有对当前公式所在的单元格进行操作. 
Target只是一个地址变量,并不代表目前单元格, 用ACTIVECELL试了一下,也不行. 
估计只能等公式计算完后再写个宏,对这些单元格进行标注.

 
作者: funhere    时间: 2008-12-31 17:21
谢谢指点,倒是提醒我,尝试在关闭表格的时候运行一个宏,完成功能。不过,我要先查查资料,看看如何让宏在关闭文件时自动运行




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3