Bonjour Cedric, Michel, re JC (bonne digestion avec ce limoncello ? !!!), le Forum
Moi je pense tout simplement que ta Variable "Résultat" est soit mal déclarée ou pas déclarée du tout...
Voici comment je m'y prendrai pour être sûr de mon coup...
Option Explicit
Sub Test()
'Ici je Dim la Variable as Double (pour toutes valeurs numériques avec ou sans décimale voir Aide pour Limite)
Dim Resultat As Double
'Ici il est primordial de tester que la valeur est numérique avnat d'initialiser la Variable
If Not IsNumeric(Sheets("support").Range("B4")) Then Exit Sub
If Sheets("support").Range("B1") = True Then
Resultat = CDbl(Sheets("support").Range("B4"))
With Sheets("calcul").Range("D6")
.Value = Resultat
.NumberFormat = "# ##0.00"
End With
End If
End Sub
De cette manière, il ne peut pas y avoir de surprise, soit il ne se passe rien (le premier test "Not IsNumerique" n'est pas passé), soit tu as bien ta valeur en "D6" de la feuille "Calcul".
Pour Cédric, tu noteras au passage que je ne mets jamais d'accent ni caractère spéciaux dans les noms utilisés dans mes codes VBA (même les noms de feuilles d'ailleurs, essayez un RowSource = "Troisième Feuille à gauche!A1:A100"....), et je le conseille à tous pour vous éviter parfois des arrachages de cheveux, quand tout à coup, après un Zippage, ou sur une autre machine, ou encore une traversée par email, tout foire...
Pour JC tu verras ici exactement ce dont je te parlais à midi pour le Test de Valeur Numérique...
Bon Aprèm et bon week end à tous et toutes
@+Thierry