使用活动用户窗体作为变量?

时间:2018-07-10 15:18:49

标签: excel vba

我有一本工作簿,其中包含几种用户形式,我将其视为自己的应用程序。我现在拥有的是以下代码,当您在大多数用户窗体上单击“后退”按钮并检查用户的Windows凭据时,这些代码将运行。

Sub backbutton()
If getWinUser = "Joseph.B" Then
MainMenu.Show vbModeless
ElseIf getWinUser = "Aaron.G" Then
MainMenu.Show vbModeless
ElseIf getWinUser = "Debralee.B" Then
MainMenu.Show vbModeless
ElseIf getWinUser = "Amanda.S" Then
MainMenu.Show vbModeless
ElseIf getWinUser = "Miguel.A" Then
MainMenu.Show vbModeless
Else: OLMenu.Show vbModeless
End If
End Sub

尽管现在我需要做的是添加以下代码,以帮助记住活动用户窗体的最后一个窗口位置。我想将其处理到上面的代码中,所以它是一个要调用的子程序。

PhoneHiring_Left = Me.Left
PhoneHiring_Top = Me.Top
BackStatus = True
Load frmPhoneHiring_Main
frmPhoneHiring_Main.Left = PhoneHiring_Left
frmPhoneHiring_Main.Top = PhoneHiring_Top
frmPhoneHiring_Main.Show vbModeless

我不想将其放在每个单独的用户窗体上,而是要使用一个变量将其添加到第一个子窗体中,该变量可用于引用任何当前活动的窗体。我最初的想法是这样的:

PhoneHiring_Left = ActiveForm.Left
PhoneHiring_Top = ActiveForm.Top
BackStatus = True
Load frmPhoneHiring_Main
frmPhoneHiring_Main.Left = PhoneHiring_Left
frmPhoneHiring_Main.Top = PhoneHiring_Top
Unload ActiveForm

但是它似乎不起作用。 ActiveForm似乎不是一个可接受的变量。

0 个答案:

没有答案