Vitesse fonction
Résolu
CHARLYJACK
Messages postés
345
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voilà je manipule au travail de gros fichiers avec plein de fonctions
du type Recherche V .....
Ces fichiers sont très lents alors ma question est simple
le fait de remplacer une fonction excel classique dans les cellules
par une fonction personnalisée reliée à du vba peut il règler le problème.
Un grand merci à toutes et à tous
Charlyjack
Voilà je manipule au travail de gros fichiers avec plein de fonctions
du type Recherche V .....
Ces fichiers sont très lents alors ma question est simple
le fait de remplacer une fonction excel classique dans les cellules
par une fonction personnalisée reliée à du vba peut il règler le problème.
Un grand merci à toutes et à tous
Charlyjack
3 réponses
-
Bonjour,
lorsqu'on a beaucoup de formules comme ça, le plus simple est de garder les formules sur 1 ligne, et de faire un copier-collage spécial valeur sur les autres.
La ligne conservée servira, en la recopiant vers le bas, à faire les mise à jour du tableau.
eric-
Bonjour Eric,
et merci de l'interet que tu portes à ma requête,
J'avais envisagé ta solution au départ j'avais répété la même ligne 10000 fois, j'ai diminué mais ça reste long.
Pour mieux comprendre voici le fichier
https://www.cjoint.com/?BGdwAw7Ztn4
Bien entendu les exemples sont fictifs mais ce tableau contient plus d une centaines de références, L'interêt est d'avoir toutes les infos utiles grace à un simple code.
J'ai lu que les tableaux sont des variables vba et qu'il est possible de gagner du temps par ce biais quand penses tu ?
merci Charly -
-
Re,
Déjà tu peux remplacer :
=SI(ESTNA(RECHERCHEV(G3;Liste;2));"";RECHERCHEV(G3;Liste;2))
par :
=SI(NB.SI(Liste;G3);RECHERCHEV(G3;Liste;2);"")
qui est beaucoup plus léger.
Mais surtout pourquoi préparer 10000 lignes ?
Mets ce qu'il faut et recopie vers le bas au fur et à mesure des besoins.
Le plus efficace reste de mettre les résultats au lieu des formules. Que ce soit par copier-coller ou macro, ce que tu as démarré apparement.
eric -
-
-
-
Il faut alléger et optimiser les formules, et utiliser des noms de plage.
Il faut aussi débarrasser l'ordinateur de tous les cookies & fichiers temporaires qui l'encombrent.
Il faut également éviter d'avoir plusieurs applications ouvertes simultanément.
Il faut enfin vérifier qu'une défragmentation du disque n'est pas nécessaire. .
Cordialement.-
Bonjour Raymond
le problème vient des formules ,
ta première ligne m'interesse vivement par contre est ce que tu peux être un peu plus explicite .
https://www.cjoint.com/?BGdwAw7Ztn4
Tu peux trouver le fichier en question en suivant ce lien , bien entendu c'est une copie du fichier qui comporte une centaines de références !
merci de l'interet que tu porte à ma requete
Charly
-
-
Non.