Bonjour,
j'aurais besoin de votre aide, je rencontre un problème avec ma macro qui s’arrête avec un petit message..
Après analyse, je me suis aperçu que le problème arrive quand la macro analyse un fichier ouvert sur un autre PC du réseau. après avoir fait fermé ce fichier tout fonctionne
Je ne sais pas du tout comment palier à ce problème..
voici une parti du code
L'arret de la macro ce fait que la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part Sheets(OngletAnalyse).Range("A1").CopyFromRecordset RstMerci pour votre aide
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 Set Cn = New ADODB.Connection Set oCat = New ADOX.Catalog With Cn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _ & rep & "\" & Nom_fic(x) & ";Extended Properties=""Excel 12.0;HDR=NO;""" .Open End With Set oCat.ActiveConnection = Cn For Each FeuilleT In oCat.Tables Onglet = Replace(FeuilleT.Name, "'", "") Onglet = Replace(Onglet, "$", "") 'Onglet = Replace(Onglet, "#", ".") If InStr(Onglet, "Print_Area") = "0" And InStr(Onglet, "_xlnm.") = "0" And InStr(Onglet, "Print_Titles") = "0" And InStr(Onglet, "FilterDatabase") = "0" Then nbonglet = nbonglet + 1 Nom_onglet(nbonglet) = Onglet End If Next Set FeuilleT = Nothing Set oCat = Nothing For y = 1 To nbonglet texte_SQL = "SELECT * FROM [" & Nom_onglet(y) & "$]" Debug.Print Nom_onglet(y) '6066 Onglet Set Rst = New ADODB.Recordset Set Rst = Cn.Execute(texte_SQL) Sheets(OngletAnalyse).Range("A1").CopyFromRecordset Rst
Partager