Заставить пользователя заполнить гиперссылку до заполнения текстового поля
В настоящее время я совершенствую довольно старую базу данных порядка задач, и одно из улучшений, которое я пытаюсь сделать, - это заставить пользователя установить значение гиперссылки в форме, прежде чем выбрать дату для задачи, которая будет помечена как завершенная.
Я чрезвычайно новичок в VBA, кстати.
FEDel - это мое текстовое поле для выбора даты.
FSDel - мой контрольный источник для выбора даты.
FDLink - это мое текстовое поле для гиперссылки.
LinkToFieldDel - это мой источник управления для гиперссылки.
Private Sub FEDel_Click()
If LinkToFieldDel = Null Then Msgbox("Please set the Field Deliverables File Path before entering a Delivery Date!", vbCritical, "Field Deliverables File Path Not Set!", "Use the 'Link to File Deliverables' button below to set the file path.") As VbMsgBoxResult
Exit Sub
Else
End Sub
Я продолжаю получать "Ошибка компиляции: оператор недействителен вне блока Type" на LinkToFieldDel, и я не понимаю, почему это так.
Я открыт для любых других предложений о том, как заставить этот тип сценария работать, это как раз то, что пришло мне в голову с моим ограниченным опытом. Спасибо!
1 ответ
Есть несколько причин, почему это не скомпилируется
- Вы должны использовать THEN на другой линии и закрыть свой блок IF после ELSE - или удалить ELSE
- Вы также должны удалить
As VbMsgBoxResult
- вы вызываете функцию, а не объявляете - Удалите это, если у вас нет файла справки где-нибудь "Используйте кнопку" Ссылка на файл "ниже, чтобы указать путь к файлу".
Также - вероятно, лучшая идея для сравнения с использованием функций IsNull() или NZ()
Private Sub FEDel_Click()
If IsNull(LinkToFieldDel) Then
Msgbox "Please set the Field Deliverables File Path before entering a Delivery Date!", vbCritical, "Field Deliverable File Path Not Set!"
Exit Sub
Else
' Do something else here
End If
End Sub