excel 编辑单元格 在另一个单元格更新为当前日期

问题分为两个:
1、当我对A1单元格进行编辑时,B1单元格自己更新成为单前日期,并且日期不能随差打开进度表或别的操作而改变;只能对A1单元格进度编辑时都更新日期,如改变单元格格式、颜色等不能更改日期
2、当A1都单格内容为"**"(*代表某个文件)时,B1更新为当前日期(要求同上),当A1为单元格内容被改为别的时,B1单元格则不能显视当前日期了。

例如:A1为状态,B1为开工日期,C1为完工日期
当A1为“在施”时,B1要现显开工日期,当A1为“停工”时,B1日期不动。当A1为“完工”时,C1要现显完工日期。当A1从“完工”变为“停工”时,C1的完工日期要自动为空

分不多,先给这么多,如果能解决我的难题,我将加位送分。谢谢大家

第1个回答  2010-07-14
先点菜单栏,工具,选项,重新计算,勾选迭代计算,最多迭代次数设为1次,确定退出.然后在B1输入=IF(A1="","",IF(B1="",TEXT(IF(B1>0,NOW(),""),"yyyy-m-d"),B1)),C1输入=IF(A1="完工",IF(C1="",TEXT(IF(C1>0,NOW(),""),"yyyy-m-d"),C1),"")
记住A1先不要输入任何内容,公式写完后再输入
第2个回答  2010-07-14
我可以用普通方法做
工具→选项→重新计算→勾选迭代计算→最多迭代次数改为1→确定→在b1输入公式:=IF(AND(A1="在施",CELL("address")="$a$1"),TEXT(NOW(),"yyyy-m-d"),IF(AND(A1="停工",CELL("address")="$a$1"),B1,B1)))→回车
在c1输入公式:=IF(AND(A1="完工",CELL("address")="$a$1"),TEXT(NOW(),"yyyy-m-d"),IF(AND(A1="停工",CELL("address")="$a$1"),"",C1))→回车,已验证结果完全正确本回答被提问者采纳
第3个回答  2010-07-14
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = "在施" Then
[b1] = Date
End If
If Target = "完工" Then
[c1].Value = [b1].Value
End If
If Target = "停工" Then
[c1].Value = ""
End If
End Sub
第4个回答  2010-07-14
公式应该不行的了,估计VBA可以轻松解决.
相似回答