Gestion d'erreur
K
Bonjour chers tous
La macro ci-dessous permet d'importer des données de d'autres fichiers vers mon classeur actif.
Je voudrais gérer les cas d'erreur s'il se trouve que le fichier à importer à déjà été importé.
Merci!!
Sub Compil()
Dim fichie As Variant
Dim wkb1 As Worksheet
Dim shF As Worksheet
Dim classeur As Workbook
Dim i As Long
Application.ScreenUpdating = False
ChDir ActiveWorkbook.Path
fichie = Application.GetOpenFilename(FileFilter:=" Excel Files ( *.xlsx;*.xls;*.xlsm), ( *.xlsx;*.xls;*.xlsm), All Files, *.*", FilterIndex:=1, MultiSelect:=True, Title:="Selectionnez le ou les Fichier(s) à Importer")
If Not IsArray(fichie) Then
If fichie = False Then MsgBox "Sélection de fichier Annulée": Exit Sub Else fichie = Array(fichie)
End If
Application.ScreenUpdating = False
For i = 1 To UBound(fichie)
Sheets("PROT").Copy After:=Sheets("BASE")
Set shF = ThisWorkbook.Worksheets(2)
Set classeur = Application.Workbooks.Open(fichie(i))
Application.ScreenUpdating = False
Set wkb1 = classeur.Worksheets(1)
shF.Range("B1:E12").Value = wkb1.Range("B1:E12").Value
shF.Name = wkb1.Range("B1")
classeur.Close SaveChanges:=False
ThisWorkbook.Worksheets("BASE").Activate
Sheets(2).Visible = True
Next
End Sub
Hello,
Je voudrais gérer les cas d'erreur s'il se trouve que le fichier à importer à déjà été importé.
Pour moi ce n'est pas une erreur mais plutôt un contrôle à faire.
Par exemple remplir une cellule à chaque fois que le fichier est importé, à la date du jour par exemple, supprimer cette date à la fermeture du fichier.
A voir