1
我試圖構建一個Excel宏,它允許我執行以下操作:匹配值並將其複製到一個新的單元格
我有兩個Excel工作表。
我想讓宏匹配Sheet1中的所有值,col A與Sheet2中的單元格A1。如果匹配,請將Sheet1中的單元格Dx複製到Sheet2中的單元格D1。如果沒有,請移至Sheet2中的單元格A2並執行相同操作,但將單元格Dx從Sheet1複製到單元格D2。
我嘗試了vlookup方法,但失敗了。
=vlookup($A1,CELLREF-SHEET1,column(),false)
我也想實現這個方法,我已經爲另一個項目寫:
Dim cel As Range, celFound As Range, rg As Range, rgLookHere As Range
Dim i As Long
Dim v As Variant
Set rg = Range("A1") 'First cell to check
Set rgLookHere = rg.Offset(0, 1).EntireColumn 'Check for matches in this column
Set rg = Range(rg, Cells(Rows.Count, rg.Column).End(xlUp))
On Error Resume Next
ReDim v(1 To rg.Cells.Count, 1 To 1)
For Each cel In rg.Cells
i = i + 1
If cel <> "" Then
Set celFound = Nothing
Set celFound = rgLookHere.Find(cel.Value, LookIn:=xlValues, LookAt:=xlWhole)
v(i, 1) = IIf(celFound Is Nothing, "Null", "yes")
End If
Next
rg.Offset(0, 2).Value = v
On Error GoTo 0
你有什麼建議嗎?
嘿。 VLOOKUP不起作用,因爲我需要遍歷COL A Sheet 2中的所有單元格以匹配Sheet 1中的單元格A1。 謝謝。 – user196803 2009-10-27 15:09:14
我認爲您正在尋找將Sheet2 D1中的公式簡單地複製到下面的所有其他單元格中。即將上述完全相同的公式放入D1,D2,D3 .....無限期。這將意味着對於表2中列A中的每一行都有值的行,您還將在列D中具有上面的公式。 – 2009-10-27 17:02:07
實際上,我所做的是使用兩個「For」 「如果」與相對範圍。作爲魅力工作。 無論如何。 – user196803 2009-10-28 13:30:52