Je pilote Excel par OLE (instructions lancées à partir d'un programme
borland C++).
Tout marche très bien à une exception près : chaque fois que je lance la
fonction OleFunction("Refresh") d'un objet QueryTable, Excel consomme de la
mémoire mais ne la restitue pas spontanément.
Je n'ai pas trouvé le moyen de libérer cette mémoire : même l'utilisation de
la fonction OleFunction("Delete") sur le QueryTable ne libère pas la mémoire.
C'est seulement quand je quitte Excel que cette mémoire est libérée.
Quelqu'un a t'il une solution pour libérer la mémoire sans avoir à quitter
Excel.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Ange Ounis
Question récurrente s'il en est (comment contraindre Excel à libérer de la mémoire "à la volée"). Question malheureusement sans réponse : Excel se verrouille au démarrage un bout de mémoire vive, travaille dans cet espace protégé (dont les limites sont relativement vite atteintes dans certaines situations : graphiques, formats, polices) et n'offre aucune prise pour intervenir dessus, du moins pour autant que je le sache.
---------- Ange Ounis ----------
Bonjour à tous,
Je pilote Excel par OLE (instructions lancées à partir d'un programme borland C++).
Tout marche très bien à une exception près : chaque fois que je lance la fonction OleFunction("Refresh") d'un objet QueryTable, Excel consomme de la mémoire mais ne la restitue pas spontanément.
Je n'ai pas trouvé le moyen de libérer cette mémoire : même l'utilisation de la fonction OleFunction("Delete") sur le QueryTable ne libère pas la mémoire.
C'est seulement quand je quitte Excel que cette mémoire est libérée.
Quelqu'un a t'il une solution pour libérer la mémoire sans avoir à quitter Excel.
Merci pour toute réponse
Philippe.
Question récurrente s'il en est (comment contraindre Excel à libérer de la
mémoire "à la volée").
Question malheureusement sans réponse : Excel se verrouille au démarrage un bout
de mémoire vive, travaille dans cet espace protégé (dont les limites sont
relativement vite atteintes dans certaines situations : graphiques, formats,
polices) et n'offre aucune prise pour intervenir dessus, du moins pour autant
que je le sache.
----------
Ange Ounis
----------
Bonjour à tous,
Je pilote Excel par OLE (instructions lancées à partir d'un programme
borland C++).
Tout marche très bien à une exception près : chaque fois que je lance la
fonction OleFunction("Refresh") d'un objet QueryTable, Excel consomme de la
mémoire mais ne la restitue pas spontanément.
Je n'ai pas trouvé le moyen de libérer cette mémoire : même l'utilisation de
la fonction OleFunction("Delete") sur le QueryTable ne libère pas la mémoire.
C'est seulement quand je quitte Excel que cette mémoire est libérée.
Quelqu'un a t'il une solution pour libérer la mémoire sans avoir à quitter
Excel.
Question récurrente s'il en est (comment contraindre Excel à libérer de la mémoire "à la volée"). Question malheureusement sans réponse : Excel se verrouille au démarrage un bout de mémoire vive, travaille dans cet espace protégé (dont les limites sont relativement vite atteintes dans certaines situations : graphiques, formats, polices) et n'offre aucune prise pour intervenir dessus, du moins pour autant que je le sache.
---------- Ange Ounis ----------
Bonjour à tous,
Je pilote Excel par OLE (instructions lancées à partir d'un programme borland C++).
Tout marche très bien à une exception près : chaque fois que je lance la fonction OleFunction("Refresh") d'un objet QueryTable, Excel consomme de la mémoire mais ne la restitue pas spontanément.
Je n'ai pas trouvé le moyen de libérer cette mémoire : même l'utilisation de la fonction OleFunction("Delete") sur le QueryTable ne libère pas la mémoire.
C'est seulement quand je quitte Excel que cette mémoire est libérée.
Quelqu'un a t'il une solution pour libérer la mémoire sans avoir à quitter Excel.