Bonjour,
2 choses ...
Je me permets de revenir vers vous car quand je charge beaucoup de lignes (genre 700.000) dans le fichier j'ai un problème de lenteur d'ouverture du fichier (il faut attendre 30mn)
Comment s'effectue le chargement des lignes ?
j'ai ça qui prend du temps: Ralentissement (4 Processeur(s) %)
Function prix(cel As Range) ' cel étant la quantité réelle
For i = (Asc("J") - 64) To Cells(cel.Row, Columns.Count).End(xlToLeft).Column Step 3
If Cells(cel.Row, i) > cel Or Cells(cel.Row, i) = "" Then Exit For
prix = Cells(cel.Row, i + 1)
Next
End Function
Function optimum(cel As Range) ' cel étant la quantité réelle
For i = (Asc("J") - 64) To Cells(cel.Row, Columns.Count).End(xlToLeft).Column Step 3
If Cells(cel.Row, i + 2) < cel.Offset(0, 2) And Cells(cel.Row, i + 2) <> 0 Then optimum = Cells(cel.Row, i)
Next
optimum = Application.Max(optimum, cel.Value)
End Function
Dans ce cas, il ne faut pas passer directement par la fonction, mais l'activer seulement une fois les modifications faites. Par contre cela veut dire que ce ne sera plus automatique à chaque changement de valeur.
Cela améliorera peut-être les choses, mais il faudra bien passer par ce calcul !
Je regarde pour te donner une alternative.