Bonjour.
Je travail actuellement sur une application existante que je doit modifier. Elle doit ce connecter à des fichiers Excel pour une importation. Une gestion d'erreur est mise en place pour voir si le fichier choisi correspond bien au fichier que l'on doit importer.
...
Le problème c'est que je ne comprend absolument pas comment la gestion est faite. voici le code :
Voici le fonction G_AUTO_SAUC_FCT_Ouvrir_fichier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 VAR_chemin_fichier = G_AUTO_SAUC_FCT_Ouvrir_fichier(STR_nom_fichier) 'STR_nom_fichier est une variable contenant le nom du fichier à importer If VAR_chemin_fichier = "" Or IsNull(VAR_chemin_fichier) Or VAR_chemin_fichier = False Then MsgBox "Importation du fichier annulée", vbExclamation + vbOKOnly, "Annulation" Exit Sub End If Echo False ... Set OBJ_Appli_Excel = CreateObject("Excel.Application") 'enlève les messages d'alertes OBJ_Appli_Excel.DisplayAlerts = False Set OBJ_Classeur_Excel = OBJ_Appli_Excel.Workbooks.Open(Filename:=VAR_chemin_fichier) With OBJ_Classeur_Excel.ActiveSheet 'fait sauter le filtre .Range("A1:Z64000").AutoFilter On Error Resume Next 'détermine la ligne des en-têtes INT_ligne_ref = .Columns(G_AUTO_SAUC_CONST_Col_deb_recap).Find("appélation", LookIn:=xlValues, LookAt:=xlPart).Row'G_AUTO_SAUC_CONST_Col_deb_recap est une contante qui vaut 4 'ajout au 13/03/07 Gestion d'erreur dans le choix du fichier If Err <> 0 Then MsgBox "Vous n'avez pas sélectionné le bon fichier", vbExclamation + vbOKOnly, "Importation impossible" OBJ_Classeur_Excel.Close OBJ_Appli_Excel.Close Exit Sub End If
Ce que j'ai compris (ou cru comprendre ) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Public Function G_AUTO_SAUC_FCT_Ouvrir_fichier(STR_Titre_Fenetre As String) As String Dim VAR_nom_chemin As Variant Dim HWND_TOPMOST Dim OBJ_excel As Excel.Application On Error Resume Next Set OBJ_excel = CreateObject("Excel.Application") Call SetWindowPos(OBJ_excel.hwnd, HWND_TOPMOST, 0&, 0&, 800, 580, 0) G_AUTO_SAUC_FCT_Ouvrir_fichier = OBJ_excel.GetOpenFilename(filefilter:="Fichier d'importation ,*.xls", Title:=STR_Titre_Fenetre) 'GetOpenFilename(filefilter:="Fichier d'exportation (*.xls) ,*.xls", Title:="Choix du fichier pour l'exportation du rapport de caisse") Set OBJ_excel = Nothing End Function
-G_AUTO_SAUC_FCT_Ouvrir_fichier permet d'ouvrir la fenetre windows qui me demande de sélectionner le fichier Excel à ouvrir
-Ensuite si Err est différent de 0 alors il y à une erreur dans le choix du fichier...mais là ...pour moi ça veu rien dire.
-Err est quelque chose de vba qui permet la gestion des erreurs...mais j'en sais pas plus.
-On Error Resume next permet en cas d'erreur de continuer quand même.
Voila tous ce que je sais ou ai compris (plus ou moins bien).
Si vous pouviez m'expliquer comment le tout fonctionne ... parce que moi là je nage complet!!!...
Merci d'avance
Partager