如何在excel2007中,双击特定的列的任何一个单元格,自动显示当天日期,并不会改变?

举个例子:例如A列中,双击A9,A9单元格自动显示当天日期如2011/10/18。并且这个单元格在不动它的情况下一直保持2011/10/18。各位高手,麻烦将公式说清楚点,请描述详细点哦!谢谢了:-)
成功后追加30分~

你的要求用公式实现不了的。
因为双击要触发事件,必须是vba,
因为日期函数是易失函数,你它保持,必须用vba
因为公式常量不可以同在,所以必须用vba
方法
alt+F11
然后在左边的工程框找到你要实现这个效果的工作表,比如是sheet1表,就双击这个sheet1
然后将下面的代码复制到右边的空白区

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 Then Target.Value = Date
End Sub

存盘退出
重新打开文件。打开时,需要你选择“启用宏”
这样你在sheet1表的A列,任一单元格进行双击即可
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-14
这个要代码解决
ATL F11
vb界面-工程窗口中 双击 当前SHEET
弹出窗口中 将下面代码复制进去,

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Address = "$A$9" Then
ActiveCell.Value = Date
End If
End Sub

然后双击A9单元格即可得到当日日期
这个是A9双击得到日期,
如果想A列 所有单元格双击都得到当日日期,就将下面代码复制进去,
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.COLUMN = 1 Then
ActiveCell.Value = Date
End If
End Sub
第2个回答  2011-10-14
不太可能 excel双击单元格的动作默认是编辑单元格,这个没法改...追问

有没有其他更好的方案?

追答

有种例外 例如你在A1里填上2011-10-14,excel会自动识别为日期,然后选中那个单元格,选中框的右下角不是有个黑点么?,拖动那个黑点向下,excel会自动填充A1下面日期,这个用来做时间表很方便

第3个回答  2011-10-14
你说是特定列不点击时是空的,双击之后出现日期吧,好像不太可能,双击是编辑单元格啊。
第4个回答  2011-10-14
你这个问题要请VBA高手编辑宏来解决,我对这个问题也感兴趣。