gpt4 book ai didi

vba - 我应该如何存储一个变量,以便在 excel 中不同的 VBA 代码调用中使用它?

转载 作者:行者123 更新时间:2023-12-04 21:05:58 24 4
gpt4 key购买 nike

当有人打开工作簿时,我有一个密码验证步骤。我有多个用户将访问此工作簿,并且基于此我分配了一个名为 user 的变量来确定其中谁在使用它。

Public pwd, user As String
Public graccess As Integer

Private Sub workbook_open()
graccess = 0
Do
pwd = InputBox("Please provide your password", "Authentication")
If pwd = "access" Then
user = "GTS"
graccess = 1
ElseIf pwd = "enter" Then
user = "AP"
graccess = 1
Else
MsgBox ("failed to authenticate")
pwd = ""
graccess = 0
End If
Loop Until graccess = 1
End Sub

现在,当这个用户开始在 Excel 工作表上工作时,我需要检查用户变量以检查哪个用户正在访问工作表。由于此代码现在将出现在 *worksheet_change* 事件中,因此它是一个不同的子例程,它将在前一个代码完成运行并且不再使用后运行。

所以我的问题是
我是否无法在变量中看到用户,因为我的 workbook_open 事件已经结束并且代码已停止运行?
我能做些什么来确保变量不会失去它的值(value)?

谢谢你的耐心:)

最佳答案

两件事情:

  • 修复 DIM

    暗淡密码为字符串,用户为字符串
  • 将 DIM 移至标准模块
  • 关于vba - 我应该如何存储一个变量,以便在 excel 中不同的 VBA 代码调用中使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18658697/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com