Citation Envoyé par Pierre Fauconnier Voir le message
Darkvader,

Ce serait intéressant, dans une nouvelle discussion, que tu développes ceci

car j'ai des difficultés à comprendre le conseil que tu donnes, et pour tout dire, je le considère comme erroné et inexploitable...
N'y a-t-il une petite contradiction entre «j'ai des difficultés à comprendre» et «je le considère comme erroné et inexploitable»
à moins que ce soit parce que tu penses que le contexte actuel est inadapté ?

Dans le premier cas, il est facile de démontrer que travailler directement sur un tableau
est nettement plus rapide que travailler directement sur les cellules ,
=> si le tableau est saisi directement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Dim plage As Range, tmp()
 
Set plage = [Bruts!D3:AI38]
tmp() = plage
 
For x = LBound(tmp) To UBound(tmp) '.../...
=> et d'autant que le tableau est conséquent.
Idem dans le sens inverse quand une affectation en retour est nécessaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
plage.Resize(UBound(tmp), UBound(tmp, 2)) = tmp
La démonstration de vitesse comparée entre fonction de feuilles complexe et fonction VBA a démontré un facteur de 1 à 100 dans un exemple récent du forum.


Au sens de la seconde interprêtation, il est vrai que l'architecture d'un projet doit se prêter à utiliser cette méthode
notamment par l'utilisation de plage à affecter contiguë,
au cas contraire, il faut biaiser par l'utilisation de feuille cachée par exemple, etc.