В настоящее время у меня есть пользовательская форма, которая включает в себя даты и время, которые загружаются при нажатии кнопки.Когда он появляется, он поставляется с уже заполненными примерами значений по умолчанию. Однако я решил, что я хочу, чтобы пользовательская форма также загружалась при нажатии на ячейку.Однако при нажатии на ячейку я хочу, чтобы пользовательская форма отображалась с уже заполненными датами и временем (в зависимости от местоположения ячейки)
Пока у меня есть следующее: Это в пользовательской форме
Private Sub UserForm_Initialize()
'Set Duration Box default value to 1
DurationBox.Value = 1
'Set court one as default
OptionButton1.Value = True
'Set Default (example) Date
DateBox.Text = "Ex 22/05/2001"
'Set Default start time
StartBox.Text = "08:00"
'Set Default Number of weeks
WeeksBox.Text = 1
В ячейках есть следующее:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim CurDate As String
Dim CurStart As String
If Target.Row > 6 And Target.Row < 21 And Target.Column > 5 And
Target.Column < 13 Then
CurRow = ActiveCell.Row
CurCol = ActiveCell.Column
CurDate = Cells(5, CurCol).Text
CurStart = Cells(CurRow, 1).Text
UserForm1.Show
End If
End Sub
Когда пользовательская форма загружается таким образом, я хочу, чтобы CurDate и CurStart возвращали значения по умолчанию DateBox и StartBox
Однакоесли я просто добавлю:
'Set Default (example) Date
DateBox.Text = CurDate
'Set Default start time
StartBox.Text = CurStart
после загрузки пользовательской формы Во-первых, он ничего не делает, пока я не закрою пользовательскую форму, а во-вторых, выдает ошибку.
По существу, я хочу датьПользовательская форма отличается Инициализацией в зависимости от того, как она активирована.Я мог бы просто иметь две пользовательские формы, которые делают одно и то же, но остальная часть кода очень длинная, и ее все еще можно изменить.