Excel VBA如何将范围乘以一个数字
我是VBA新手,我正在寻求帮助以解决以下问题。我需要把一个范围乘以一个数字。所有在该范围内的单元格都需要乘以该数字Excel VBA如何将范围乘以一个数字,vba,excel,multiplication,Vba,Excel,Multiplication,我是VBA新手,我正在寻求帮助以解决以下问题。我需要把一个范围乘以一个数字。所有在该范围内的单元格都需要乘以该数字 谢谢大家! 正如我刚才所说。 1.在单元格处输入公式(如G1) 2.按Enter键并拖动公式 keong已经向您展示了一种方法,但不幸的是,该方法需要一个人在另一个单元格/区域中进行计算。如果这是你想要的,那么按照keong的答案去做,但是如果你想在相同的范围内进行计算,那么继续阅读下面的内容 下面是另一种不使用公式或VBA的方法 假设范围是A1:A10,您希望将整个范围乘以5
谢谢大家! 正如我刚才所说。
1.在单元格处输入公式(如G1)
2.按Enter键并拖动公式
keong已经向您展示了一种方法,但不幸的是,该方法需要一个人在另一个单元格/区域中进行计算。如果这是你想要的,那么按照keong的答案去做,但是如果你想在相同的范围内进行计算,那么继续阅读下面的内容 下面是另一种不使用公式或VBA的方法 假设范围是
A1:A10
,您希望将整个范围乘以5
5
您可以稍后删除该文件李>
A1:A10
粘贴特殊|值-乘法
,如下图所示,即可完成操作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
是一个变量,该变量的数值与您想要的范围相乘。不使用vba即可完成此操作,只需在一个单元格中输入公式并在范围中拖动公式即可。嘿,Sid,您能想出一种方法在vba中完成此操作,而不使用单元格作为源值吗?我不知道怎么做的是把一些东西放在办公室的剪贴板上。而且看起来你不能从Windows剪贴板粘贴特殊值。@Douglancy:请看i_saw_drones的答案,因为数据存储为文本,所以“粘贴特殊值-乘法”不可用。但是paste特殊格式:=“Text”
可用,不支持Multiply
我总是可以创建一个新的隐藏页,在那里键入数字,然后复制它?一旦乘法运算完成,你就可以删除表格。希德哈特,是的,隐藏的表格或者类似的方法就是这样。但如果是这样的话,我想我应该通过一个数组进行循环。只是想知道在VBA中是否有一种方法。很高兴和你谈话!如果您想使用剪贴板,还有一种替代方法。我刚刚更新了我的帖子。好了!我再投你一票。