在另一个工作簿的其他工作表中查找值并复制到当前工作簿的工作表

时间:2011-10-24 15:39:42

标签: vba

我在2本不同的工作簿中有2张纸。 a)练习册(A)。表(“A”) B)工作簿(B).Sheets( “B”)

工作簿A中的工作表A是目标文件。 工作簿B中的工作表B是源文件。

用户在表A中输入B(打开表B)的文件名,然后从表B中循环以查找大于参考值的值。找到值后,该值将立即复制并粘贴到工作表A(工作簿b)。然后循环回到表B中以查找后续值(大于参考值)。该过程将持续到符合某些标准。

我设法在循环中找到值,但我必须将值粘贴到表单B中,然后复制到表单A.当然,用户必须单击消息是否保存表单B. 下面是编写的代码。请各位赐教。

Dim VerR As Workbook
Dim VerRDest As Worksheet
Dim VerRMaxR As Range

Application.ScreenUpdating = False
XLS = Cells(16, 5)
Workbooks(XLS).Activate

Sheets("ROLLER").Select
Path = Cells(18, 5)
NoR = Cells(17, 5)
Workbooks.Open Filename:=Path

Set VerR = Workbooks(XLS)
Sheets("Stat_1").Select        
y = 3
i = 4
Do While (Cells(i, 1) <> "")
    i = i + 1
Loop

m2 = i - 1
For x = 4 To m2
    If (cells(x,2)>5) Then
        y = y + 1
        TF = True
        If TF Then
            Cells(y, 6) = Cells(x + 1, 1)
            Cells(y, 5) = Cells(x + 1, 2)
        End If
    End If
Next x

Set VerMax1 = ActiveSheet.Range(Cells(4, 5), Cells(y, 6))
VerMax1.Copy
ActiveWorkbook.Close

Set VerRDest = VerR.Worksheets("ROLLER")
Set VerRMaxR = VerRDest.Range(Cells(4, 3), Cells(y, 4))
VerRMaxR.PasteSpecial , Paste:=xlPasteValues

我的目标是粘贴该值而不影响源工作簿。请帮助。谢谢。我真的很感激你的想法。我在我的智慧结束。

1 个答案:

答案 0 :(得分:1)

dim r1 as range, r2 as range

r1.copy r2

r1.copy
r2.pastespecial ....