Вы бы предпочли иметь контроль над пользователями, импортирующими файлы, вместо того, чтобы они использовали для этого функции Excel? Вам нужно больше контроля над импортом для проверки или модификации при импорте? Есть несколько способов сделать это и столько же вариантов требований, но вот некоторые из строительных блоков, с которых можно начать.
1. Поместите следующий код в модуль и запустите его.
'Определить переменные 'Открыть общий диалог и получить имя файла 'Отмена проверки не была нажата 'Импортировать файл Конец подпискиPublic Sub CustomImport ()
Dim ImportFile As String
Dim ImportTitle As String
Dim TabName As String
Dim ControlFile As String
ImportFile = Application.GetOpenFilename (_
«Файлы Excel, * .xls, Все файлы, *. *»)
ImportTitle = _
Mid (ImportFile, InStrRev (ImportFile, "\") + 1)
Если ImportFile = "False", то
Выйти из подводной лодки
Конец, если
TabName = "MyCustomImport"
ControlFile = ActiveWorkbook.Name
Рабочие книги. Открыть имя файла: = ImportFile
ActiveSheet.Name = Имя вкладки
Таблицы (TabName) .Copy _
До: = Рабочие книги (ControlFile) .Sheets (1)
Windows (ImportTitle). Активировать
ActiveWorkbook.Close SaveChanges: = False
Windows (ControlFile). Активировать
Примечание: это хорошо работает для файлов * .xls, * .xlsx, * .xlsm, * .csv и * .txt. Вы можете добавить или вызвать код перед End Sub, чтобы изменить импортированные данные, прежде чем пользователь сможет их коснуться.