我有一个工作簿设置,可以跟踪登录和注销时的用户和时间。注销由按钮或仅关闭工作簿触发。唯一的问题是有人可能希望不保存他们在工作簿中完成的工作,但我仍然希望看到他们何时登录和审核我的审核日志。所以我想我真正的问题是有一种方法只能将数据保存在一个工作表而不是整个工作簿中吗?如果是这样在VBA中看起来像什么?
答案 0 :(得分:0)
如果你想要的只是一个审核日志,你可以很容易地使用文本文件。但是,您当前正在记录您的"登录信息"可以修改为将其记录到该工作表和另一个Excel工作簿或所提到的文本文件。显然,您可以编辑路径以保存到您想要的任何目录。一定要先创建一个Log.txt(或其他)文件。同样,如果您倾向于捕获它们,可以添加其他变量,我假设您已经在现有代码中使用了这些变量。此代码中的开放语句未反映在屏幕上。它会在事件查看器中弹出一个任务,然后将其关闭。
Sub LogIn()
Dim Path As String
Dim TxtLog As String
Dim i As Integer
i = FreeFile
Path = ThisWorkbook.Path & "\Log.txt"
Open Path For Input As i
TxtLog = Input(LOF(i), i) & vbCr & Now()'read entire log file into string and add new info
Close i 'close log.txt for reading to VBA
i = FreeFile
Open Path For Output As i 'open log.txt to write to it from VBA
Print #i, TxtLog
Close i
End Sub