大型项目,需要在另一个子项目中调出一个子项目的帮助
这不输出任何东西,并且调用它的子程序正在工作,但是这部分不工作
`Private Sub Data100()
Dim b1 As Integer
Dim sourceRange As Range
Dim targetRange As Range
b1 = Range("V8").Value
If b1 = 0.015625 Then
Set sourceRange = Range("U150", "X150")
Set targetRange = Range("U201", "U204")
sourceRange.Copy
targetRange.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:=False, Transpose:=True
End If
End Sub`
没有错误消息,只会输出任何内容。想复制U150-X150并在U201-U204列中输出
答案 0 :(得分:1)
在进一步检查时,我对语法范围定义不正确是不正确的。我从未见过使用Range("U150","X150")
,但是它看起来与Range("U150:X150")
是相同的结果。您会发现这个发现的!!
S ...在您的代码中,我唯一看到的错误是您的if-statement
返回了False
,因为您将B1
定义为Integer
, if语句正在检查等于十进制which it will never be。如果将B1
重新定义为Double
,我认为您的代码将按如下所示工作。我成功运行了您的经过稍微修改的代码。
此外,请避免一般使用Integer
。只需使用Long
。有关SO社区的一些发现,请参见post here。节省内存是不值得的。
Private Sub Data100_Modified()
Dim b1 As Double, sourceRange As Range, targetRange As Range
With ActiveSheet
b1 = .Range("V8").Value
If b1 = 0.015625 Then
Set sourceRange = .Range("A1","A3")
Set targetRange = .Range("B2","d2")
sourceRange.Copy
targetRange.PasteSpecial Paste:=xlPasteValues, Transpose:=True
End If
End With
End Sub