2011-10-24 151 views
0

我在2個不同的工作簿中有2個工作表。 (A) b)工作簿(B)。工作表(「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 

我的目標是粘貼值,而不會影響源workbook.Pls幫助。謝謝,我真的很欣賞你的想法。我在我的智慧結束。

+0

如果你覺得我正確地回答了你的問題,那麼請把它標記爲回答。 – Jon49

回答

1
dim r1 as range, r2 as range 

r1.copy r2 

r1.copy 
r2.pastespecial .... 
+0

感謝您的回覆。我將所有源文件複製到我當前的工作簿中。然後複製數據範圍。它運作良好。畢竟,這取決於用戶是否刪除數據。 –

相關問題