我对VBA很新,我正在寻求帮助来解决以下问题。我需要将一个范围乘以一个数字。该范围内的所有单元格都需要乘以该数字。
谢谢!
答案 0 :(得分:1)
keong已经向您展示了一种方法,但不幸的是,该方法需要一个方法在另一个单元格/范围内进行计算。如果这是你想要的,那么请使用keong的答案,但是如果你想在相同的范围内进行计算,那么继续阅读下面的内容。
这是另一种不使用公式或VBA的方法。
我们假设范围为A1:A10
,您希望将整个范围乘以5
5
即可。 您可以稍后删除。 A1:A10
Paste Special | Values - Multiply
,如下所示,您已完成。<强>之前强>
<强>后强>
通过评论进行跟进
如果您不想使用临时单元格来编写5,那么您可以直接在剪贴板中设置5
并像这样使用它。
Option Explicit
Sub Sample()
Dim ws As Worksheet
Dim MyData As New DataObject
Dim rng As Range
Set ws = Sheet1
Set rng = ws.Range("A1:A5")
'~~> Put the number 5 in clipboard
MyData.SetText 5
MyData.PutInClipboard
'~~> Get the data from clipboard
MyData.GetFromClipboard
rng.Formula = Application.Evaluate("=" & _
rng.Address & _
"*" & _
Val(MyData.GetText))
End Sub
就像我提到的那样,你不需要VBA但是如果你仍然想要使用VBA,那么你可以使用它而不是将数据复制到剪贴板。
rng.Formula = Application.Evaluate("=" & rng.Address & "*" & MYNUMBER)
其中MYNUMBER
是具有您希望将范围乘以的数字的变量。
答案 1 :(得分:0)
正如我刚才所说的那样
1.在细胞处输入公式(例如G1)
2.按Enter键并拖动公式