Bonjour,
Après moultes tentatives, des recherches qui semblaient prometteuses mais infructueuses (à moins que je me trompe quelquepart) je poste ici ^^
Voila mon problème :
-J'exécute une connexion ADODB, je fais un openrecordset
-Je fais un second openrecordset dans le premier pour avoir une seconde source de données, puis je la ferme et l'initialise
-Je fais ensuite un troisième openrecordset que j'execute et ferme de la même manière
-une fois tout cela fait, je ferme aussi mon recordset et je ferme ma connexion
Tout irait bien si... bah..... l'utilisation mémoire d'Excel ne serait pas énorme :! (350 000 ko...) alors que j'ai fermé Excel, et que les seules actions que j'effectue sont lancer la macro qui exécute le code.
En parlant du code, le voici :
Si quelqu'un a une idée, je l'en remercie d'avance
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
35
36
37
38
39
40
41 'Récupération de toutes les informations nécessaire pour l'export des critères thisWbName = ThisWorkbook.Path & "\" & ThisWorkbook.name Set oCnn = connectToExcel(thisWbName) Set oRec = oCnn.OpenRecordSet(requete) iRec = 0 If (Not oRec Is Nothing) Then Do While Not oRec.EOF iRec = iRec + 1 Set oRecComposante2 = oCnn.OpenRecordSet(requete2) Do While Not oRecComposante2.EOF oRecComposante2.moveNext Loop End If oRecComposante2.Close Set oRecComposante2 = Nothing Set oRecComposante3 = oCnn.OpenRecordSet(requete3) If (Not oRecComposante3 Is Nothing) Then Do While Not oRecComposante3.EOF oRecComposante3.moveNext Loop oRecComposante3.Close Set oRecComposante3 = Nothing End If oRec.moveNext Loop oRec.Close Set oRec = Nothing oCnn.Fermeture Set oCnn = Nothing
Edit : Pour le cas où je vais compléter pour expliquer un peu plus en détail le fonctionnement de la macro :
- La connexion s'effectue sur le fichier déja ouvert (pas de copie du fichier, puis connexion sur ce fichier)
Serait-il donc plus judicieux de créer une copie du fichier, de se connecter sur ce fichier et de mettre à jour la feuille de mon premier fichier via le fichier qui a été copié ?
Mais cela résoudra-t-il mon problème de ressources utilisées par je ne sais quoi :! ?
Merci d'avance
Partager