VBA Excel Выберите файл – при нажатии на отмену текстового поля

В основном у меня есть электронная таблица с формой на ней. В этой форме есть текстовое поле, содержащее путь к файлу, который может быть предварительно заполнен из ячейки на листе. Но пользователь может выбрать другой файл. Когда они просматривают, у них есть опция «Открыть» или «Отменить». Кнопка открытия работает нормально и заполняет текстовое поле, но если они выбирают отмену, он очищает текстовое поле, если оно уже заполнено. Как я могу остановить очистку текстового поля?

Я сузил его до этого блока кода, где это происходит:

Function GetFileName() Set MyFile = Application.FileDialog(msoFileDialogOpen) With MyFile .Title = "Choose File" .AllowMultiSelect = False If .Show <> -1 Then Exit Function End If GetFileName = .SelectedItems(1) End With End Function 

Это сделало трюк. Убедитесь, что имя файла имеет значение перед заполнением текстового поля

 Private Sub btnBrowse_Click() Dim sFileName As String sFileName = GetFileName() If Len(sFileName) > 0 Then TextBox1.Value = sFileName End If End Sub Function GetFileName() Set MyFile = Application.FileDialog(msoFileDialogOpen) With MyFile .Title = "Choose File" .AllowMultiSelect = False If .Show <> -1 Then Exit Function End If GetFileName = .SelectedItems(1) End With End Function 
Interesting Posts

Экспоненциальное сглаживание в Excel для Mac?

Excel Macro, чтобы выбрать все значения из выпадающего списка и скопировать-вставить значения

Как я могу запускать команды Python из Excel VBA?

Ссылка на ячейки в Power Query (Excel)

Удалить пробел в конце текста в Excel

Улучшите гибкость VBA для преобразования VLOOKUP в INDEX / MATCH

Как выполнить скрипт powershell из Excel?

Excel VBA не распознает открытую вручную .xlam

Дублирование названных диапазонов между книгами приводит к тому, что мои пользовательские функции запутываются

Итерация через электронные таблицы в папке и сбор значений из каждого

Как создать RichTextString с использованием инфраструктуры POI Apache в Java?

как преобразовать ms excel xml с помощью простой таблицы стилей?

VBA: ошибка при определении приложения при запуске LastRow Code

Исключительная копия Excel Interop вызывает исключение HRESULT: 0x800A03EC

Разбирайте формат номера США в немецком Excel

Давайте будем гением компьютера.