VBA - Изградете персонализиран интерфейс за импортиране

Съдържание

Бихте ли предпочели да имате контрол върху потребителите, които импортират файлове, вместо да ги накарате да използват функциите на 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 = _
Средна (ImportFile, InStrRev (ImportFile, "\") + 1)

„Не е щракнато върху отмената на чека
Ако ImportFile = "False" Тогава
Изход от Sub
Край Ако

„Импортиране на файл
TabName = "MyCustomImport"
ControlFile = ActiveWorkbook.Name
Работни книги. Отворете Име на файл: = ImportFile
ActiveSheet.Name = TabName
Листове (TabName). Копиране _
Преди: = Работни книги (ControlFile). Листове (1)
Windows (ImportTitle). Активирайте
ActiveWorkbook.Close SaveChanges: = False
Windows (ControlFile) .Активирайте

End Sub
Sidenote: Това работи добре за *.xls, *.xlsx, *.xlsm, *.csv и *.txt. Можете да добавите или извикате код преди End Sub, за да промените импортираните данни, преди потребителят да може да ги докосне.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave