Rechercher : dans
Par :

[Vba Excel] Actualisation de requête

Dernière réponse le 9 jun 2005 à 11:57:44 kilian, le 2 mai 2005 à 14:07:05 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un ptit soucis dans une macro en VBA.
En fait ça se présente comme ça:

sub macro()
        Declaration des variables
        Placement de la selection à la première case

        Actualisation de la requête
   
         Instructions....
end sub


Le gros soucis c'est que l'actualisation de la requête ne se fait qu'à la fin du script.

Je la fais comme ceci:
Selection.QueryTable.Refresh


J'ai essayé d'autres trucs comme déclarer cette actualisation dans une fonction et l'appeler dans la procédure de la macro...Ou encore utiliser une macro qui appele dans l'ordre la macro d'actualisation puis ensuite une autre macro ou se trouvent le reste des instructions mais ça ne change rien, j'ai toujours le même effet.

Vous auriez une idée?

Merci.....
Configuration: Windows 2000
Excel 2000

2

kilian, le 3 mai 2005 à 10:32:49

Up :-)

Répondre à kilian

3

Canard007, le 3 mai 2005 à 10:34:36

Tu veux dire que tu lance l'actualisation de la requete mais quelque soit le moment le code continue sa course et n'attend pas la fin de cette actualisation? COIN!

Répondre à Canard007

4

kilian, le 3 mai 2005 à 10:38:41

Tout à fait :-)

Quel que soit l'endroit où je place l'actualisation, elle ne s'execute qu'à la fin de la macro.....

Du coup, toutes les instructions suivantes font des traitements dans le vide....

Répondre à kilian

5

Canard007, le 3 mai 2005 à 10:50:59

Et il n'y a pas une instruction style wait possible en VBA? COIN!

Répondre à Canard007

6

kilian, le 3 mai 2005 à 11:23:48

Je viens d'essayer avec ça:
http://www.ilook.fsnet.co.uk/vb/vbsleep.htm

L'attente se fait mais la requête ne s'execute qu'à la fin, comme avant.....

Répondre à kilian

7

 kilian, le 9 jun 2005 à 11:57:44
  • +1

Ayé j'ai trouvé :-)

Il ne faut pas que l'actualisation de la requête se fasse en arrière plan:

Selection.QueryTable.Refresh BackgroundQuery:=False

Répondre à kilian