msoFileDialogFilePicker приводит к ошибке

Пожалуйста, не комментируйте ничего о соглашениях об именах, подходах, спрашивая, что должен делать код, или о чем-либо, что не имеет прямого отношения к моей проблеме:

Это отлично работает для меня каждый раз: появляется окно, и я выбираю несколько файлов Excel, и их данные загружаются на мой лист (код не показан). Мой клиент говорит, что у него возникает ошибка, когда он запускает его, и, естественно, я предположил, что это произошло потому, что он запускал его на Mac... но он говорит, что он получает ошибку на и на ПК, и на Mac. Я могу не воссоздать ошибку ... и вот мы здесь.

Вот рассматриваемый код, ошибочная строка выделена желтым цветом: введите описание изображения здесь

введите здесь описание изображения

Код для вашего копирования:

Sub Import_Employee_Sheet()
    With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = True

        If .Show = True Then
        End If
    End With
End Sub

person C-Love511    schedule 04.09.2016    source источник


Ответы (1)


Вероятно, это связано с тем, что он не установил ссылку Microsoft Object [Version number] Library в разделе "Инструменты/Ссылки" в среде IDE или потому, что она не работает. Также см. этот пост о том, как исправить проблему БЕЗ установки ссылки на объект, чтобы избежать подобных проблем в будущее.

Изменить

Он должен читаться как «... без установки ссылки на библиотеку» выше.

person Miqi180    schedule 04.09.2016
comment
Хорошо, я вижу исправление. Итак, для моего образования это работает, потому что оно использует целое число вместо msoFileDialog, который зависит от библиотеки? - person C-Love511; 04.09.2016
comment
Объект FileDialog принимает параметр в виде константы MsoFileDialogType, которая представляет тип диалогового окна, в данном случае msoFileDialogFilePicker. Таким образом, параметр взаимозаменяем с числом (напишите в исправлении Long, а не integer, но это не принципиально). Причина, по которой исправление работает, связана с первыми тремя строками кода, а не только с первой. См. msdn.microsoft.com/en-us/library/office/ff196794. .aspx - person Miqi180; 04.09.2016