Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 使用vba将基于条件的范围从一张图纸复制到另一张图纸_Arrays_Vba_Excel - Fatal编程技术网

Arrays 使用vba将基于条件的范围从一张图纸复制到另一张图纸

Arrays 使用vba将基于条件的范围从一张图纸复制到另一张图纸,arrays,vba,excel,Arrays,Vba,Excel,我在excel中创建了选择器,它将根据输入的要求填充最合适的产品。在另一个工作表中,我有一个列表,其中a-C列有参考,D-J列为空白 我想做的是当一个QTY在N12:N35范围内的选择器中输入(注意只有一行的QTY,所有其他行都是空的),我按下一个Add按钮,这行中选择器的列J-P被复制到另一个工作表中,进入空白单元格DJ 我尝试了许多代码,但都没有成功,并且出现了各种错误。有人能帮忙吗 选择器在下面,我希望复制的列隐藏在下面 如果上面输入了数量,我想将上面的J-p列粘贴到下面的D-J列。将只

我在excel中创建了选择器,它将根据输入的要求填充最合适的产品。在另一个工作表中,我有一个列表,其中a-C列有参考,D-J列为空白

我想做的是当一个QTY在N12:N35范围内的选择器中输入(注意只有一行的QTY,所有其他行都是空的),我按下一个Add按钮,这行中选择器的列J-P被复制到另一个工作表中,进入空白单元格DJ

我尝试了许多代码,但都没有成功,并且出现了各种错误。有人能帮忙吗

选择器在下面,我希望复制的列隐藏在下面

如果上面输入了数量,我想将上面的J-p列粘贴到下面的D-J列。将只输入1个数量,所有其他数量将为空


什么是“选择器”?请分享您的工作表布局,可能有一个屏幕截图,因为它不是很清楚这里发生了什么或到底需要发生什么。请分享一些你写的代码,即使它是错误的,因为它可能会帮助我们理解你在追求什么。@jnevil很抱歉耽搁了。添加了更多细节。
    Sub Add()

    Dim searchRange As Range
    Dim foundCell As Range
    Dim mysearch As Integer
    Dim iRow As Long
    Dim ws1, ws2 As Worksheet

    Set ws1 = Worksheets("Output")
    Set ws2 = Worksheets("Selector")
    iRow = Sheets("Output").Range("D2").End(xlUp) + 1

    mysearch = Sheets("Selector").Range("N10").Value

    With Sheets("Selector")
        Set searchRange = Sheets("Selector").Range("N12:N35") ', .Range("A" & .Rows.Count).End(xlUp))
    End With

    Set foundCell = searchRange.Find(what:=mysearch, Lookat:=xlWhole, MatchCase:=False, SearchFormat:=False)
    If Not foundCell Is Nothing Then
        ws1.Cells(iRow, 4).Value = foundCell.Offset(0, -4).Value       
'and so on
    End If

    End Sub