当频率值<>“”'在频率范围> <空->错误时执行

时间:2019-02-26 10:55:24

标签: excel vba

我正在为研究人员实习时使用此excel文档,但无法直截了当地

Sub Boucle()

    Dim freq As Range
    Set freq = Range("D10:D230")

    Do While freq.Value <> " " 'if freq in range >< empty --> ERROR BUG HERE

        freq.Offset(0, 1).Copy 'copy value of adjacent cell 
        freq.Offset(freq.Value + 1, 18).PasteSpecial xlPasteValues 'and paste to specific value +1 into table I created

    Loop
End Sub

VBA表示运行时错误13,这很奇怪,因为当我对“每个单元格”执行相同的代码时,它可以工作,但会在第一个频率值+ 1处粘贴所有值

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

Sub Boucle()
    Dim freq As Range
    Set freq = Range("D10:D25")
    Set Masking_threshold = Cells(1, 21) '= column in which I wanted to paste

    For Each freq In Range("D10:D25")
        If freq.Value <> " " Then
              freq.Offset(0, 1).Copy
              Masking_threshold.Offset(freq.Value, 0).PasteSpecial xlPasteValues
        End If
    Next

End Sub

对于此参数,使用相同的变量(范围> <“”),它以某种方式可以正常工作。