OVH Cloud OVH Cloud

liaison

4 réponses
Avatar
LEVANT
Bonsoir

A travers une macro VBA, je r=E9cup=E8re dans un fichierA des=20
datas. Je veux savoir s'ils sont pr=E9sents dans un=20
fichierB. Pour cela j'utilise la fonction VLOOKUP dans mon=20
code. A chaque cellule que j'initialise, le syst=E8me=20
ex=E9cute la recherche tout de suite, le fichierB =E9tant sur=20
un r=E9seau, le temps de traitement est donc rallong=E9.

Existe-t-il une m=E9thode pour suspendre la mise =E0 jour des=20
cellules, et ne la lancer qu'une fois toutes mes cellules=20
pr=E8tes ?

Merci

4 réponses

Avatar
Pascal Engelmajer
Salut,
il faut utiliser pa propriété ScreenUpdating d'Application
avant de commencer
Application.ScreenUpdating = False
après
Application.ScreenUpdating = True

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"LEVANT" a écrit dans le message de
news: 111a01c3df7a$ed414df0$
Bonsoir

A travers une macro VBA, je récupère dans un fichierA des
datas. Je veux savoir s'ils sont présents dans un
fichierB. Pour cela j'utilise la fonction VLOOKUP dans mon
code. A chaque cellule que j'initialise, le système
exécute la recherche tout de suite, le fichierB étant sur
un réseau, le temps de traitement est donc rallongé.

Existe-t-il une méthode pour suspendre la mise à jour des
cellules, et ne la lancer qu'une fois toutes mes cellules
prètes ?

Merci
Avatar
Céline Brien
Salut,
Je propose de désactiver le calcul automatique au début de la macro et
de le réactiver à la fin :
' Désactiver le calcul automatique
Application.Calculation = xlManual
' Activer le calcul automatique
Application.Calculation = xlAutomatic
Au plaisir,
Céline

"LEVANT" a écrit dans le message
de news:111a01c3df7a$ed414df0$
Bonsoir

A travers une macro VBA, je récupère dans un fichierA des
datas. Je veux savoir s'ils sont présents dans un
fichierB. Pour cela j'utilise la fonction VLOOKUP dans mon
code. A chaque cellule que j'initialise, le système
exécute la recherche tout de suite, le fichierB étant sur
un réseau, le temps de traitement est donc rallongé.

Existe-t-il une méthode pour suspendre la mise à jour des
cellules, et ne la lancer qu'une fois toutes mes cellules
prètes ?

Merci
Avatar
J'ai toujours le même problème. A chaque passage dans ma
boucle, dès le code envoyé dans la cellule, le système
part en mise à jour.

Une autre idée ?

-----Message d'origine-----
Salut,
il faut utiliser pa propriété ScreenUpdating
d'Application

avant de commencer
Application.ScreenUpdating = False
après
Application.ScreenUpdating = True

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel
"LEVANT" a écrit
dans le message de

news: 111a01c3df7a$ed414df0$
Bonsoir

A travers une macro VBA, je récupère dans un fichierA des
datas. Je veux savoir s'ils sont présents dans un
fichierB. Pour cela j'utilise la fonction VLOOKUP dans mon
code. A chaque cellule que j'initialise, le système
exécute la recherche tout de suite, le fichierB étant sur
un réseau, le temps de traitement est donc rallongé.

Existe-t-il une méthode pour suspendre la mise à jour des
cellules, et ne la lancer qu'une fois toutes mes cellules
prètes ?

Merci


.



Avatar
J'ai toujours le même problème. A chaque passage dans ma
boucle, dès le code envoyé dans la cellule, le système
part en mise à jour.

Une autre idée ?


-----Message d'origine-----
Salut,
Je propose de désactiver le calcul automatique au début
de la macro et

de le réactiver à la fin :
' Désactiver le calcul automatique
Application.Calculation = xlManual
' Activer le calcul automatique
Application.Calculation = xlAutomatic
Au plaisir,
Céline

"LEVANT" a écrit
dans le message

de news:111a01c3df7a$ed414df0$
Bonsoir

A travers une macro VBA, je récupère dans un fichierA des
datas. Je veux savoir s'ils sont présents dans un
fichierB. Pour cela j'utilise la fonction VLOOKUP dans mon
code. A chaque cellule que j'initialise, le système
exécute la recherche tout de suite, le fichierB étant sur
un réseau, le temps de traitement est donc rallongé.

Existe-t-il une méthode pour suspendre la mise à jour des
cellules, et ne la lancer qu'une fois toutes mes cellules
prètes ?

Merci

.