Bonjour tous le monde,
Malheuresement comme d'habitude, quand je viens soliciter de l'aide sur ce forum, c'est que j'ai un problème insolvable (pour mon humble niveau).
Le problème est le suivant, je suis entrain de develloper une application VBA-Excel, et je me retrouve face à une impasse.
En effet j'ai deux cellules qui sont calculées par des formules, mais qui viennent interagir l'une sur l'autre.
Dans la première cellule ("tonnes"), si je rentre un chiffre il est automatiquement converties en nombres de bobines correspondants dans la cellule deux ("bobine").
Le problème c'est que je dois également permettre de rentrer un chiffre dans la cellule bobine qui doit permettre de recalculer l'équivalent en tonne.
Vu que c'est sur l'évenement OnChange que les formules sont appliquées, dès qu'une de mes cellules est modifiées par la deuxième, l'évenemenent est de nouveau invoqué. Les cellules sont très vite saturée par les calcules frénétique qu'on leurs demande de faire .
Voici le code
J'aurais esperé que vous auriez une technique à me faire part pour contourner cette difficultée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("QteTonne").Address Then If Range("nbBobine").Value <> "=SI(IU17="";;)" Then Range("nbBobine").Value = Range("qteTonne").Value * 1000 / (Range("longueur").Value * Range("laize").Value * Range("grammage").Value / 1000000) Range("nbBobine").FormulaR1C1 = "=IF(R[0]C[3]="""",,)" End If End If If Target.Address = Range("nbBobine").Address Then If Range("QteTonne").FormulaLocal <> "=SI(H17="";;)" Then Range("QteTonne").Value = (Range("nbBobine").Value * (Range("laize").Value * Range("grammage").Value / 1000000)) / 1000 Range("QteTonne").FormulaR1C1 = "=IF(R[0]C[-3]="""",,)" End If End If End Sub
En vous remerciant d'avance je vous souhaite une agréable journée.
Partager