设置主页 | 收藏本站 Excel学习网-公益型的EXCEL在线学习网站,助您轻松办公!

如何监视Excel VBA的调用堆栈

2021年07月27日 14:06 发布来源:Excel学习网

   新建一张EXCEL工作薄,单击来发工具——VisualBasic,或者同时按住Alt+F11,打开VBA编辑对话框。

  在打开的VBA对话框中,双击“sheet1”,打开代码编辑窗口,我们将要在代码编辑窗口中编译代码,以实现监视功能。

  在编辑框中输入:

  Sub UsePassword()

  Dim Users As Variant

  Dim Row As Long

  Users = ActiveWorkbook.UserStatus

  Row = 1

  With Workbooks.Add.Sheets(1)

  .Cells(Row, 1) = "文本用户名"

  .Cells(Row, 2) = "最后修改时间"

  .Cells(Row, 3) = "修改使用方式"

  For Row = 1 To UBound(Users, 1)

  .Cells(Row + 1, 1) = Users(Row, 1)

  .Cells(Row + 1, 2) = Users(Row, 2)

  Select Case Users(Row, 3)

  Case 1

  .Cells(Row + 1, 3).Value = "个人工作表"

  Case 2

  .Cells(Row + 1, 3).Value = "共享工作表"

  End Select

  Next

  End With

  Range("A:C").Columns.AutoFit

  End Sub

  现在在VBA编辑器菜单栏中,选择运行”——运行子过程\用户窗体,现在会打开一个新的工作表,在工作表中显示:

  文本用户名         最后修改时间        修改使用方式

  Administrator      2013-12-24 18:39      个人工作表

  现在我们关闭VBA编辑框,在下一次打开工作表的时候,选择开发工具”——宏,打开宏对话框,选择“Sheet1.UsePassword”,单击运行按钮,就会在新的工作薄中得到结果:

  文本用户名         最后修改时间        修改使用方式

  Administrator      2013-12-24 18:46      个人工作表