表格设置了很多公式,想让表格到期(具体到时、分、秒)后自动销毁公式,请问这样的ExcelVBA宏代码怎么写

如题所述

下面的VBA代码就可以:

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Now > #6/1/2019 10:04:59 AM# Then
        Me.UsedRange.Value = Me.UsedRange.Value
    End If
End Sub

注意代码要放在工作表里面,如下图:

程序里面的#6/1/2019 10:04:59 AM# 是到期时刻,你需要适当调整,格式是:月/鈤/年 时:分:秒

追问

开头的 Option Explicit 是代码的组成部分吗,还是自动添加的?

追答

这个语句不是必须的,只是良好的编程习惯,它能在拼写错了变量名称的时候进行提示,而不是立即自动化的定义一个值为空的新变量。如果不希望程序出现各种稀奇古怪的事情,最好是保留。

追问

试了一下,表格公式仍然完好地存在着,不知道是我哪里没操作正确

追答

一到了指定时间以后,二点一下表格的内容,然后公式就会转换为数值

追问

时间是12小时制的吗,修改为18:00:00,点击保存就自动变成6:00:00,修改为21:00:00自动变成9:00:00。

追答

自动改变说明系统理解了,后面有AM、PM表示上下午的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-04
我 帮 你
相似回答