Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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
Vba 查找地址和求和地址值_Vba_Excel - Fatal编程技术网

Vba 查找地址和求和地址值

Vba 查找地址和求和地址值,vba,excel,Vba,Excel,我正在我的工作表中搜索项目编号。找到它后,我需要在它的地址下面选择14行,然后复制到另一张纸上。我可以找到搜索时的地址,但无法选择所需的行。这是我代码的一部分 If opcao = True Then For i = 1 To 200 If ws.Cells(i + 1, 1) = valor_busca Then correto = ws.Cells(i + 1, 1).Address Debug.Print corret

我正在我的工作表中搜索项目编号。找到它后,我需要在它的地址下面选择14行,然后复制到另一张纸上。我可以找到搜索时的地址,但无法选择所需的行。这是我代码的一部分

If opcao = True Then
    For i = 1 To 200
        If ws.Cells(i + 1, 1) = valor_busca Then
            correto = ws.Cells(i + 1, 1).Address
            Debug.Print correto, correto_1
        End If
    Next
End If

您需要的是
.EntireRow
类似这样的内容:

ws.Cells(i + 1, 1).EntireRow.Select
如果需要选择多行,请尝试以下操作:

ws.Range(ws.Cells(i + 1, 1), ws.Cells(i + 14, 20)).Select

使用
.Resize
方法。所以

ws.Cells(i+1,1)。调整大小(14,1)。复制图纸(“Sheet1”)。范围(“A1”)假定为直接粘贴

您可以根据需要更改要粘贴到的工作表和范围。

您可以尝试以下操作:

   If opcao = True Then
        For i = 1 To 200
            If ws.Cells(i + 1, 1) = valor_busca Then
                Set source = ws.Range(ws.Rows(i + 1), ws.Rows(i + 14))
                source.Select '... or source.Copy (dest)...
                exit For
            End If
        Next
    End If

当你说14行的时候,你是需要整个区域在牢房下面14行,还是只需要第14行?你好,斯科特!我需要最多14行的整个范围。请使用
.Resize
方法。请看下面我的答案。这在14行中成功了!谢谢你回复我的朋友