Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

SERIEUXETCOOL

XLDnaute Occasionnel
Bonsoir le Forum,

Me revoici ici avec un nouveau genre de problème. Ce problème la me semble tout particulièrement costaud. Et par voie de conséquence, est plus adapté aux personnes très expérimentées à la programmation sous Excel.

Quel est le problème ? J'ai une base de données plutôt conséquente en longueur. J'utilise la base de données pour tracer des graphiques. Étant sous Excel 2007, j'utilise des mises en formes particulières qui ne sont proposées qu'à partir d'Excel 2007. Notamment des mises en formes 3D telles que des ombres et des biseaux. Tous ceux qui n'ont pas Excel 2007 ne pourront donc pas participer. Je ne peux pas utiliser Excel 2003. C'est une contrainte obligatoire.
Du coup quand je lance la macro, et malgré le fait que j'ai désactivé les affichages et les alertes j'obtiens toujours un message de la part d'Excel. Un message qui m'avertit du fait que l'utilisation de mises en formes complexe peut ralentir le PC. OR ça ne le ralentit pas du tout, et de plus je ne veux plus ce message.

Si quelqu'un sait résoudre le problème, se serait intéressant.

Pour compliquer d'avantage la situation, j'ai remarqué (grâce à un ami) que la charge dédiée augmantais au fur et à mesure que je lancais la macro plussieurs fois de suite. Le système va en se dégradant ! C'est un GROS problème dont je ne parviens pas à identifier la cause. Il y a une fuite de données dans le code qui fait que la situation se dégrade à chaque lancement de la macro. C'est donc de pire en pire.

Et la encore, aucune idée sur le problème.

Si un petit géni passe dans le coin, j'aimerais bien qu'il se casse la tête sur ce "phénomène" non linéaire...

Cordialement,

André

PS : Je post un fichier type qui met en évidence le phénomène. Petites aides pour faire fonctionner le bazar :

-Ouvrir le fichier Excel (2007)
-Autoriser les Macros si besoin est
-Double cliquer sur le bouton rouge qui devrait apparaitre en haut à gauche de l'écran
-Le fichier à sélectionner est le fichier texte

C'est très simple rassurez-vous.

Télécharger Copie de BONNE VERSION IE 8.xlsm gratuitement - Packupload

Télécharger FICHIER DE POINTS.txt gratuitement - Packupload
 

max.lander

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Salut à tous,

ton fichier marche très bien chez moi, pas de message d'avertissement! tu utilises quoi comment environnement OS+Matériel?
Concernant le lancement successif de ta macro et le ralentissement, tu as essayé en réinitialisant tes variables ?
 

SERIEUXETCOOL

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Bonsoir Max.Lander,

Ça ne m'étonne pas vraiment si dans certaines config ça fonctionne. Je m'explique.
Il y a deux jours j'utilisais une version de mon code qui fonctionnais parfaitement mais qui tournais sur Windows XP 32 bit, Office 2007, et Internet Explorer 6.

Je n'avais pas ce problème MAIS, quand je lançais mon code sur d'autres machines et environnements je recevais des problèmes. Des problèmes dues à un WebBrowser qui n'utilisait pas la bibliothèque "ieframe.dll" mais "shdocvw.ddl"

Du coup j'ai installé Internet Explorer 8, j'ai pu récupérer le composant qui n'était pas bon initialement et du coup j'ai obtenu un fichier compatible sur bien plus de machines et d'environnements.
Sauf qu'en changent Internet Explorer, j'ai rencontré ce fameux problème de message d'alerte. Message que je n'avais pas auparavant.

C'est pour cela que je dis que ça ne m'étonne pas vraiment si ça fonctionne. Encore faut il savoir pourquoi ça fonctionne sur certains et pas sur tout le monde !

Je récapitule ma machine : Windows XP 32 bit, Office 2007, et Internet Explorer 8

Perso j'ai toujours deux ou trois fois le message d'alerte Excel en cour de calcul. C'est désagréable et surtout je ne comprends pas la raison !


Et toi, que possède tu comme environnement ?

En tout cas, tu es le premier qui ne rencontre pas de problème depuis que j'ai migré vers IE 8. Intéressant...et curieux également.

André

PS : Je n'ai pas tenté de réinitialiser les variables. En même temps je suis débutant et ne connais pas cette commande. Je devrais trouver ça très facilement sur le net. Je vais donc tester. Pourquoi pas en effet.
 
Dernière édition:

SERIEUXETCOOL

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Pour le message d'erreur aucun souci.

J'ai mis un imprim écran en pièce jointe. Je dispose d'un seven 32 et 64 bit ce weekend. J'essayerais demain pour voir si je déclenche ou non le problème.

Si déjà toi tu ne l'a pas, c'est bon signe ;)

André
 

Pièces jointes

  • 1.jpg
    1.jpg
    64.9 KB · Affichages: 111
  • 1.jpg
    1.jpg
    64.9 KB · Affichages: 132
  • 1.jpg
    1.jpg
    64.9 KB · Affichages: 128

dra72

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Rebonjour,

Bien vu max.lander

Effectivement, en supprimant le sendkeys, je vois le message d'erreur aussi.

Par contre, pas de ralentissement constaté après plusieurs lancements de la macro.

Bonne journée
 

SERIEUXETCOOL

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Bonjour à tous,

Bien je vois que plusieurs d'entre vous ne reçoivent pas le message d'erreur. C'est plutôt une bonne chose.

Alors en effet si on enlève le Sendkeys enter on voit tous le problème. J'avais déjà posté dans ce forum ce problème la il y a quelques temps. On m'avait proposé comme solution (pas terrible mais qui fonctionnait) de placer judicieusement le sendkeys enter pour éviter d'avoir le message d'erreur.

C'est pour cette raison que dans le code que je propose, il y a la présence du sendkeys enter. Ça avait résolu mon problème.


Mais maintenant j'ai de nouveau le message d'alerte même avec les sendkeys mis en place. C'est cela que je ne comprend pas.

Visiblement, vous qui avez testés le fichier, n'avez pas rencontrés le problème avec les sendkeys mis en place. Mais moi si je fais le même test que vous, j'ai encore le message d'alerte.
C'est dingue ça ??? Pourtant j'utilise me même code que vous !

Je dispose de windows XP 32 bit, Office 2007 et IE 8, 2 Go de Ram. Soit en conclusion la même config que certains d'entre vous. Et pourtant moi ça foire.


Avez vous remarqués la chose suivante :

-Lancez le gestionnaire des tâches de windows, onglet performances
-Repérez la valeur de la charge dédiée en Mo ( En bas du gestionnaire)
-Lancez Excel puis la Macro et repérez la nouvelle valeur de charge dédiée
-Relancez plusieurs fois la macro sans fermer le fichier Excel
Vous devrez observer une montée de la charge dédiée ! Comment est-ce possible ? Que signifie tout ça ?

J'ai le sentiment qu'Excel garde en mémoire des choses qui créent un décalage et du coup le sendkeys ne sert plus à rien. Non ?
André
 
Dernière édition:

dra72

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Avez vous remarqués la chose suivante :

-Lancez le gestionnaire des tâches de windows, onglet performances
-Repérez la valeur de la charge dédiée en Mo ( En bas du gestionnaire)
-Lancez Excel puis la Macro et repérez la nouvelle valeur de charge dédiée
-Relancez plusieurs fois la macro sans fermer le fichier Excel
Vous devrez observer une montée de la charge dédiée !

J'avais effectivement testé ceci. Je n'ai pas remarqué de variation significative.

Concernant le sendkeys, as-tu essayé de le déplacer dans ton code?
Peut-être n'intervient-il pas au bon moment.
 

max.lander

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

Après quelques tests , je peux vous confirmer qu' 1 fois sur 5 le message d'erreur apparaît même avec le sendkeys!

donc je suis aussi dans le même cas !!!

Aussi, ce message d'information ne semble pas être classifié dans les messages d'alertes classiques la commande Application.DisplayAlerts = True n'a pas d'influence!

Mais malheureusement je ne trouve rien sur ce message d'erreur, il est visiblement déclenché quand le seuil de ressources disponibles devient critique!

Ton programme est très lourd pendant le traitement mon processeur fait la grimace , normal me direz-vous, le VBA c'est toujours gourmand mais bon il y a quand même beaucoup de lignes qu'il est possible d'alléger!

tu peux déjà commencer par un with-end with pour les propriétés faisant références au même objet!


et un petit fil intéressant : https://www.excel-downloads.com/threads/saturation-memoire-vba.59734/

@ toute!
 
Dernière édition:

SERIEUXETCOOL

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

J'ai bien tenter de placer plusieurs sendkeys mais rien n'y fait.

D'autant plus que ça m'est arrivé de n'a pas avoir le message d'alerte la première fois, mais tout le temps ensuite. Ce n'est pas régulier. Ce n'est pas normal ça.

Le code que je vous ai envoyé est une infime partie de mon code définitif. Il est toute fois suffisant pour mettre en évidence le problème. Quand je test mon code définitif j'obtiens des variations de la charge dédiée plus importants. A chaque lancement ma charge dédiée augmente de 6 Mo coup pour coup. Si je lance une centaine de fois ma macro sur un système un peu féblard, je risque alors de le faire planter pour cause de ram insuffisante.

Moi je m'en fiche j'ai 2 Go de Ram, mais ce n'est pas une raison. D’où pourraient venir ces augmentations de charge dédiée ??? Je pense que la raison peut être intéressante.

Autre chose je viens de tester le code sur un Seven 64 bit, Office 2007 et IE 8. Aucun problème non plus. Alors qu'est qui fait que le message s'affiche ou pas sérieusement ??? Je trouve pas le lien.
 

max.lander

XLDnaute Occasionnel
Re : Problème singulier sur Excel, fuites de données dans la mémoire vive !!!

J'avais effectivement testé ceci. Je n'ai pas remarqué de variation significative.

Concernant le sendkeys, as-tu essayé de le déplacer dans ton code?
Peut-être n'intervient-il pas au bon moment.

Je pense que le message d'alerte apparaît de façon aléatoire, donc difficile à déterminer avec précision!
 

Discussions similaires

Statistiques des forums

Discussions
294 210
Messages
1 936 893
Membres
188 096
dernier inscrit
Soudeur2.0