[VBA ]跨工作表查詢

作者: kk04014 (阿助)   2016-03-07 14:28:06
請問一下各位,我現在想把第一個工作表cells(i,3)的序號在第二個工作表
第四欄做查詢,如果第二個工作表第四欄的序號跟第一個工作表第三欄的序號相同,
則把第一個工作表cells(i,3)~cells(i,13)複製貼到第二個工作表對應的欄位中。
但卻出現需要物件的錯誤訊息,請大家幫忙看一下 謝謝
Sub cusip()
Dim i As Integer
Dim cn As Integer
Dim rng As Range
Sheets("sheet1").Select
For i = 2 To 842
Set aa = sheet2.Cells.Find(what:=sheet1.Cells(i, 3), LookIn:= _
xlValues, LookAt:=xlPart,
SearchOrder:=xlByColumns, _
SearchDirection:=xlNext,
MatchCase:=False).Activate
Next
If aa = Cells(i, 3).Value Then
Let cn = rng.Find("aa").Column
Range(Cells(i, 3), Cells(i, 13)).Select
Selection.Copy
Sheets("sheet2").Select
Range(Cells(cn, 4), Cells(cn + 4, 4)).Select
Selection.Paste
Else
End If
End Sub
作者: MashiroX421 (三峰真白)   2016-03-07 16:57:00
http://i.imgur.com/abppYGj.png 原po是需要這樣?http://i.imgur.com/NylolF4.png 如果是就用迴圈+if
作者: kk04014 (阿助)   2016-03-07 18:33:00
不是耶!第三欄和第四欄的值是位於不同列http://imgur.com/8A8TTjv
作者: MashiroX421 (三峰真白)   2016-03-07 18:50:00
那麼第三欄的值是否都是唯一且不重複呢?
作者: kk04014 (阿助)   2016-03-07 20:58:00
是的
作者: MashiroX421 (三峰真白)   2016-03-07 21:24:00
作者: kk04014 (阿助)   2016-03-07 22:28:00
http://imgur.com/leUpeAq 出現錯誤訊息!!
作者: MashiroX421 (三峰真白)   2016-03-07 22:59:00
請在Copy那裡加底線,即是 Copy _
作者: kk04014 (阿助)   2016-03-07 23:07:00
同樣是destination那行語法錯誤
作者: MashiroX421 (三峰真白)   2016-03-07 23:42:00
http://i.imgur.com/2WmdnXm.png測試下原PO的語法發現,在Cells(i,3),Cells(i,13)這段會產生錯誤,因此改用Range來判斷那段Copy語法是將前面那部份的儲存格貼到目標儲存格http://i.imgur.com/ERAKp4k.png 糟糕貼錯張圖....
作者: kk04014 (阿助)   2016-03-08 00:01:00
作者: MashiroX421 (三峰真白)   2016-03-08 00:04:00
引號之間要留一個空白,另外下方Sheet2要小寫Range("C" & i & "M" & i)
作者: kk04014 (阿助)   2016-03-08 00:16:00
只有一兩個有成功貼過去,其他都沒有耶

Links booklink

Contact Us: admin [ a t ] ucptt.com