作者:乔山办公网日期:
返回目录:excel表格制作
这个可以用VBA记录在隐藏的工作表裏,只要打开一次就记录一次时间再自动保存。
假设我们百以sheet3来记录每次的开机时间,在A列往后排着记度录,那么:问
在 ThisWorkbook的open事件中答,加入如下代码:
Private Sub Workbook_Open()
Set sht = Sheets("sheet3")
sht.Cells(sht.[A65536].End(xlUp).Row + 1, 1) = Now()
'如果要自动保存就用下面这回句,如果手动保存就注释了答这句
ThisWorkbook.Save
End Sub
两个单元格,假设百1个A1,1个A2,用到if函数,当度A1出现内容时,A2自动记录时间;问
1. 设置答A2格式专为yyyy/m/d h:mm:ss;
2. 设置A2公式为=if(A1="","",if(A2="",Now(),A2))
3. 记得更改Excel - Options(选项) - Formulas(公式) - Enable iterative calculation (迭代计算)这里需打√。属
很简单的一个VBA应用,打开EXCEL文件,按Alt+F11,在左边的框里双击“ThisWorkbook”,把下面的代码复制到右边的框里面,保存即可。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("sheet1").Range("C65535").End(xlUp).Offset(1, 0) = Now
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Sheets("sheet1").Range("B65535").End(xlUp).Offset(1, 0) = Now
End Sub
Private Sub Workbook_Open()
Sheets("sheet1").Range("A65535").End(xlUp).Offset(1, 0) = Now
End Sub
该文件的Sheet1工作表的A列一次记录的是打开时间,B列记录的是保存时间,C列记录的是关闭时间,当然你可以自己完善一下,比如在Sheet1里面做个e799bee5baa6e59b9ee7ad94361表头,把表中所有单元格的格式设置为能显示分和秒的,否则如果是短时间内多次保存的话,看上去记录的时间都是一样的,呵呵……