Vil du foretrekke å ha kontroll over brukere som importerer filer, i stedet for å la dem bruke Excel -funksjonene til å gjøre det? Trenger du mer kontroll over importen din for validering eller endring ved import? Det er flere måter å gjøre dette på og like mange kravvariasjoner, men her er noen av byggesteinene å starte fra.
1. Sett følgende kode i en modul og kjør den
'Definer variabler 'Åpne felles dialog og få filnavn "Avbryt sjekk ble ikke klikket 'Importer fil Slutt SubOffentlig sub CustomImport ()
Dim ImportFile As String
Dim ImportTitle As String
Dim TabName As String
Dim ControlFile som streng
ImportFile = Application.GetOpenFilename (_
"Excel -filer, *.xls, Alle filer, *. *")
ImportTitle = _
Midt (ImportFile, InStrRev (ImportFile, "\") + 1)
Hvis ImportFile = "False" Da
Avslutt Sub
Slutt om
TabName = "MyCustomImport"
ControlFile = ActiveWorkbook.Name
Workbooks.Open Filename: = ImportFile
ActiveSheet.Name = TabName
Ark (TabName). Kopier _
Før: = arbeidsbøker (kontrollfil). Ark (1)
Windows (ImportTitle). Aktiver
ActiveWorkbook.Close SaveChanges: = False
Windows (ControlFile) .Aktiver
Sidenote: Dette fungerer bra for *.xls, *.xlsx, *.xlsm, *.csv og *.txt -filer. Du kan legge til eller ringe kode før End Sub for å endre de importerte dataene før brukeren kan berøre dem.