仅在特定工作表上打开的用户表单
Userform to open on only specific sheets
我正在尝试创建一个用于包裹数据的工作簿,工作簿上的 sheets 特定于一年中的几周,所以我有 52 sheets 个星期名为第 1 周、第 2 周、第 3 周等。另一个 sheet 称为 "Front",当用户打开工作簿时会自动显示,即使它保存在另一个 sheet 上。
他们可以从前屏幕 select 当前周数,从而也引导他们 sheet 并弹出用户表单以开始数据输入,这是我目前唯一的问题如果我点击回到首页,用户表单就会出现。有什么方法可以禁止它打开吗?
我目前有一些 "Font" sheet 的代码可以在打开工作簿时阻止它打开,但是当我移动到 sheet 时它不会停止它并且又回来了。
这就是我当前的 sheet 代码。
Private Sub ComboBox1_Change()
Sheets(ComboBox1.Value).Select
Application.EnableEvents = False
Application.EnableEvents = True
这是我目前拥有的工作簿代码。
Private Sub Workbook_Open()
Worksheets("Front").Activate
Dim iCount As Integer
Sheet1.ComboBox1.Clear
For iCount = 1 To Sheets.Count
Sheet1.ComboBox1.AddItem Sheets(iCount).Name
Next iCount
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Call OpenDataEntryForm
End Sub
Public Sub OpenDataEntryForm()
Dim dataEntryForm As ParcelDataEntry
Set dataEntryForm = New ParcelDataEntry
dataEntryForm.Show
Set dataEntryForm = Nothing
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name <> "Front" Then OpenDataEntryForm
End Sub
我正在尝试创建一个用于包裹数据的工作簿,工作簿上的 sheets 特定于一年中的几周,所以我有 52 sheets 个星期名为第 1 周、第 2 周、第 3 周等。另一个 sheet 称为 "Front",当用户打开工作簿时会自动显示,即使它保存在另一个 sheet 上。
他们可以从前屏幕 select 当前周数,从而也引导他们 sheet 并弹出用户表单以开始数据输入,这是我目前唯一的问题如果我点击回到首页,用户表单就会出现。有什么方法可以禁止它打开吗?
我目前有一些 "Font" sheet 的代码可以在打开工作簿时阻止它打开,但是当我移动到 sheet 时它不会停止它并且又回来了。
这就是我当前的 sheet 代码。
Private Sub ComboBox1_Change()
Sheets(ComboBox1.Value).Select
Application.EnableEvents = False
Application.EnableEvents = True
这是我目前拥有的工作簿代码。
Private Sub Workbook_Open()
Worksheets("Front").Activate
Dim iCount As Integer
Sheet1.ComboBox1.Clear
For iCount = 1 To Sheets.Count
Sheet1.ComboBox1.AddItem Sheets(iCount).Name
Next iCount
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Call OpenDataEntryForm
End Sub
Public Sub OpenDataEntryForm()
Dim dataEntryForm As ParcelDataEntry
Set dataEntryForm = New ParcelDataEntry
dataEntryForm.Show
Set dataEntryForm = Nothing
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name <> "Front" Then OpenDataEntryForm
End Sub