Итак, у меня есть пользовательская форма, состоящая из Multipages
, и одна из страниц содержит togglebuttons
, которые скрывают и отображают поля в пользовательской форме, а также на листе Excel.На рисунке ниже показана страница переключателя.
![enter image description here](https://i.stack.imgur.com/SrWhm.png)
Код для HAZOP / SIL & LOPA один и тот же, за исключением того, какие поля он скрывает.Ниже приведен код для кнопки переключения HAZOP.
Private Sub togbHAZOP_Click()
If togbHAZOP = True Then
Sheets("Updated Hours EST").Rows("6:27").EntireRow.Hidden = False
Sheets("SCOPE").Rows("31:37").EntireRow.Hidden = False
Sheets("SUMMARY").Rows("5:8").EntireRow.Hidden = False
Frame5.Enabled = True
Frame5.Visible = True
Frame6.Enabled = True
Frame6.Visible = True
Frame7.Enabled = True
Frame7.Visible = True
HazOp.Enabled = True
HazOp.Visible = True
Else
Sheets("Updated Hours EST").Rows("6:27").EntireRow.Hidden = True
Sheets("SCOPE").Rows("31:37").EntireRow.Hidden = True
Sheets("SUMMARY").Rows("5:8").EntireRow.Hidden = True
Frame5.Enabled = False
Frame5.Visible = False
Frame6.Enabled = False
Frame6.Visible = False
Frame7.Enabled = False
Frame7.Visible = False
HazOp.Enabled = False
HazOp.Visible = False
End If
End Sub
Код для инициализации в данный момент, но он не работает, выдает ошибку, говорящую "Run-time error 438: Object doesn't support this property or method"
Private Sub UserForm_Initialize()
WizardProp.MultiPage1.Value = 0
Me.MultiPage1.Style = fmTabStyleNone
togbHAZOP.Frame5.Enabled = False
togbHAZOP.Frame5.Visible = False
togbHAZOP.Frame6.Enabled = False
togbHAZOP.Frame6.Visible = False
togbHAZOP.Frame7.Enabled = False
togbHAZOP.Frame7.Visible = False
togbHAZOP.HazOp.Enabled = False
togbHAZOP.HazOp.Visible = False
End Sub
Проблема, которую я имеюИмея это , как я могу скрыть определенные поля в пользовательской форме в начале кода и на основе выбора пользователя с помощью togglebuttons
будет скрывать / показывать, потому что в данный момент я должен нажать на кнопки переключения затемотмените щелчок, чтобы найти его там, где связанные поля скрыты, и делать это каждый раз во время инициализации может быть неприятно.