VBA - Zbuduj niestandardowy interfejs importu

Spisie treści

Czy wolisz mieć kontrolę nad użytkownikami importującymi pliki, zamiast korzystać z funkcji programu Excel? Czy potrzebujesz większej kontroli nad importami w celu walidacji lub modyfikacji podczas importu? Istnieje wiele sposobów na zrobienie tego i tyle samo odmian wymagań, ale oto kilka elementów, od których można zacząć.

1. Umieść następujący kod w module, a następnie go uruchom

Publiczny import niestandardowy()

„Zdefiniuj zmienne”
Dim ImportFile As String
Dim ImportTitle As String
Dim Nazwa karty jako ciąg
Dim ControlFile As String

'Otwórz wspólne okno dialogowe i pobierz nazwę pliku
ImportFile = Application.GetOpenFilename( _
"Pliki Excela, *.xls, Wszystkie pliki, *.*")
ImportTitle = _
Mid(ImportFile, InStrRev(ImportFile, "\") + 1)

„Czek anuluj nie został kliknięty”
Jeśli ImportFile = "Fałsz" Wtedy
Wyjście Sub
Zakończ, jeśli

'Importować plik
TabName = "MójNiestandardowyImport"
ControlFile = ActiveWorkbook.Name
Workbooks.Open Nazwa pliku:=Importuj plik
ActiveSheet.Name = Nazwa karty
Arkusze(NazwaKarty).Kopiuj _
Przed: = Skoroszyty (ControlFile).Arkusze(1)
Windows (ImportTitle). Aktywuj
ActiveWorkbook.Zamknij ZapiszZmiany:=Fałsz
Windows (plik kontrolny). Aktywuj

Napis końcowy
Uwaga dodatkowa: działa to dobrze w przypadku plików *.xls, *.xlsx, *.xlsm, *.csv i *.txt. Możesz dodać lub wywołać kod przed End Sub, aby zmodyfikować importowane dane, zanim użytkownik będzie mógł je dotknąć.

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave