bonjour,
depuis longtemps je viens sur ce forum pour trouver des solutions ... pour une fois je n'ai pas trouvé ... et désolé si ma question a déjà été traitée (si si j'ai cherché ...)
J'ai un petit souci sur VBA : un petit code simple qui va chercher avec .offset.value le contenu d'une cellule et qui le recopie dans une autre (vidée au préalable).
sauf que ma valeur est par exemple 165,53 et la destination se remplie de 165,53124587
je précise que les deux cellules ont le même format ... j'ai vérifié en augmentant le nombre de décimales après la virgule :
valeur après recopie valeur d'origine
533,5200195312500000000 533,52000000000
-147,4299926757810000000 -147,43000000000
-520,0000000000000000000 -520,00000000000
-714,4400024414060000000 -714,44000000000
il est particulier de noter que le 3ème n'a pas changé ... mais il n'avait rien après la virgule
le code :
Dim Valeur As Single
Dim origine As Single
Dim Dest As Single
Dest = 4
Range("u:u").ClearContents
Valeur = InputBox("Saisir une valeur max", "A vous ...", 0)
With Selection
Selection.Interior.Color = xlColorIndexNone
For Each cellule In Selection
If cellule.Value <= Valeur Then
cellule.Interior.Color = RGB(255, 255, 0)
origine = cellule.Offset(0, -8).Value
Range("U" & Dest).Value = origine
Dest = Dest + 1
End If
Next cellule
End With
là je sèche et remercie ceux qui pourront m'aider ...
depuis longtemps je viens sur ce forum pour trouver des solutions ... pour une fois je n'ai pas trouvé ... et désolé si ma question a déjà été traitée (si si j'ai cherché ...)
J'ai un petit souci sur VBA : un petit code simple qui va chercher avec .offset.value le contenu d'une cellule et qui le recopie dans une autre (vidée au préalable).
sauf que ma valeur est par exemple 165,53 et la destination se remplie de 165,53124587
je précise que les deux cellules ont le même format ... j'ai vérifié en augmentant le nombre de décimales après la virgule :
valeur après recopie valeur d'origine
533,5200195312500000000 533,52000000000
-147,4299926757810000000 -147,43000000000
-520,0000000000000000000 -520,00000000000
-714,4400024414060000000 -714,44000000000
il est particulier de noter que le 3ème n'a pas changé ... mais il n'avait rien après la virgule
le code :
Dim Valeur As Single
Dim origine As Single
Dim Dest As Single
Dest = 4
Range("u:u").ClearContents
Valeur = InputBox("Saisir une valeur max", "A vous ...", 0)
With Selection
Selection.Interior.Color = xlColorIndexNone
For Each cellule In Selection
If cellule.Value <= Valeur Then
cellule.Interior.Color = RGB(255, 255, 0)
origine = cellule.Offset(0, -8).Value
Range("U" & Dest).Value = origine
Dest = Dest + 1
End If
Next cellule
End With
là je sèche et remercie ceux qui pourront m'aider ...