Je veux tout multiplier dans la plage par une valeur. J'ai essayé ce format, mais les valeurs ont disparu.
Code:
Dim yl1 As Range
Set yl1 = .Range(.Cells(17, 6), .Cells(n + 16, 6))*19.25
Réponses:
1 pour la réponse № 1Selon le lien:
Dim yl1 as Range
Set yl1 = .Range(.Cells(17, 6), .Cells(n + 16, 6))
yl1.Value = .Evaluate("INDEX(" & yl1.Address(0,0) & " * 19.25,)")
Cela les fera tous à la fois.
0 pour la réponse № 2
Il y a probablement d'autres moyens, beaucoup mieux, mais l'un n'est qu'une boucle
For i = 17 to some last row
Cells(i, 6) = Cells(i, 6) * 19.25
Next i
Je trouve de cette façon le plus intuitif, cependant.
0 pour la réponse № 3
Autrement:
Sub UsingPaste()
Range("B1").Value = 0.7
Range("B1").Copy
n = 10
Range(Cells(17, 6), Cells(n + 16, 6)).PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply
End Sub
Où B1 est une cellule non utilisée et n est ce qu'il se passe.