1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| Public Sub ImporteNecarex()
'ATL : le 09/11/2012 : appeler un sélecteur de fichier pour le chargement de fichiers textes
Dim file_name As String
Dim position As Integer
Dim dossier As String
Dim fd As Object
Dim intI As Integer
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.Title = "! Sélectionner le fichier Necarex..." ' Titre de la boîte de dialogue
fd.AllowMultiSelect = True ' Ne pas autoriser la sélection multiple
' Définir les types de fichiers autorisés
fd.Filters.Clear
fd.Filters.Add "Tous les fichiers", "*.*"
fd.Filters.Add "Excel", "*.csv; *.xls; *.xslx"
' Présélectionner le 2ème type de fichier (Excel)
fd.FilterIndex = 1
' Afficher la boîte de dialogue
If fd.Show() Then
'fd.SelectedItems
file_name = fd.SelectedItems(1)
position = InStrRev(file_name, "\")
' Extraire le chemin du dossier à partir du nom de fichier sélectionné
If position > 0 Then
dossier = Left(file_name, position)
DoCmd.RunSQL "delete * from tNecarex"
DoCmd.TransferText acImportDelim, "SpecNecarex", "tNecarex", file_name, True
'nom sans fichier
file_name = Dir(file_name)
intI = InStrRev(file_name, ".", -1, vbTextCompare)
If intI = 0 Then
FilenameWithoutExt = file_name
Else
FilenameWithoutExt = Left(file_name, intI - 1)
End If
'
'reponse = MsgBox(FilenameWithoutExt)
'creation du nom de la table d'erreur a l'import necarex
msgerrImportNecarex = FilenameWithoutExt & "_ImportErrors"
'supprime la table d'erreur a l'import necarex
DoCmd.DeleteObject acTable, msgerrImportNecarex
On Error Resume Next
End If ' If position > 0 Then
End If ' If fd.Show() Then
Set fd = Nothing
'-- Fin du Code de Travail
DoCmd.SetWarnings True
MsgBox "Tache effectuée", vbOKOnly
End Sub |
Partager