Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Attente fin processus en VBA

1 réponse
Avatar
frankie666
Bonjour à tous,

J'ai une question sur l'attente d'un processus en VBA:

Programme:
.
.
.
Range("A3:U10000").Select
Selection.FormulaArray =
"=hs5.TTableComponent|'C:\Test.h5t'!'!ITEM_1'"

'suite du programme
.
.
.


j'ai un prog vba qui crée un lien avec un prog externe. Les résultats
sont ramenés dans un array, mais comme j'ai pas mal de données
(environ 10000 lignes sur 20 colonnes) ca prend un peu de temps (env.
30 secondes). Mon problème est que le prog vba n'attend pas le retour
des infos pour continuer. J'ai essayé avec

Application.Wait(Now + TimeValue("0:00:40")

mais cette instruction bloque aussi la requete du tableau de données.

Une idée pour résoudre mon problème,

Merci d'avance,

Frankie

1 réponse

Avatar
j
étonnant que wait bloque la requete...
tu peux essayer de couper ton prog en 2 sub 1 et sub 2 et d'utiliser
application.ontime(now+qquechse,"sub 2") en fin de sub 1

ou bien essayer de faire une boucle qui tourne jusqu'à ce que ta dernière
ligne soit remplie (mais ça consomme des ressources)


"Frank Michel" a écrit dans le message de news:

Bonjour à tous,

J'ai une question sur l'attente d'un processus en VBA:

Programme:
.
.
.
Range("A3:U10000").Select
Selection.FormulaArray > "=hs5.TTableComponent|'C:Test.h5t'!'!ITEM_1'"

'suite du programme
.
.
.


j'ai un prog vba qui crée un lien avec un prog externe. Les résultats
sont ramenés dans un array, mais comme j'ai pas mal de données
(environ 10000 lignes sur 20 colonnes) ca prend un peu de temps (env.
30 secondes). Mon problème est que le prog vba n'attend pas le retour
des infos pour continuer. J'ai essayé avec

Application.Wait(Now + TimeValue("0:00:40")

mais cette instruction bloque aussi la requete du tableau de données.

Une idée pour résoudre mon problème,

Merci d'avance,

Frankie