嘗試:
Dim wsSource As Worksheet
Set wsSource = ActiveWorkbook.Worksheet("NAME SOURCE SHEET")
Dim wsOutput As Worksheet
Set wsOutput = ActiveWorkbook.Worksheet("NAME OUTPUT SHEET")
Dim ID as Range
Dim FindID as Range
Dim lRowSource as Integer
Dim lRowOutput as Integer
lRowSource = wsSource.Range("A" & Rows.Count).End(xlUp).row
lRowOutput = wsSource.Range("A" & Rows.Count).End(xlUp).row
With wsOutput
Range("B1").EntireColumn.Insert
For each ID in .Range("A1:A" & lRowSource)
Set FindID = wsSource.Range("A1:A" & lRowOutput).Find(What:=ID, LookIn:=xlValues, lookat:=xlWhole)
If Not FindID is Nothing then
wsSource.Range("B" & FindID.Row).Copy Destination:=wsOutput.Range("B" & FindID.Row)
Else
Exit Sub
End If
End With
或者你也可以使用:
Dim wsSource As Worksheet
Set wsSource = ActiveWorkbook.Worksheet("NAME SOURCE SHEET")
Dim wsOutput As Worksheet
Set wsOutput = ActiveWorkbook.Worksheet("NAME OUTPUT SHEET")
Dim i As Long
wsOutput.Range("B1").EntireColumn.Insert
For i=1 To wsSource.UsedRange.Rows.Count
If wsSource.Range("A" & i) = wsOutput.Range("A" & i) Then
wsSource.Range("B" & i).Copy Destination:=wsOutput.Range("B" & i)
End If
Next i
一個解決的問題之一。瞭解如何打開其他工作簿,如何插入列等。然後,如果您遇到這些任務中的任何一個問題,請諮詢有關特定問題的幫助。 – arcadeprecinct
如果基本命令像插入列並打開另一個工作簿,我可以這樣做,但我唯一的擔心是從另一個工作簿中獲取值,並使值與No.Id相同,就像圖片一樣。我的意思是它真的讓我感到沮喪:(。順便說一句,謝謝你的建議.. :) –
這將是從其他工作簿複製值的任務之一。如果你可以打開另一個工作簿,它應該沒問題,因爲你只需要讀取和寫入單元格值? – arcadeprecinct