0
私は以下のコードをvlookupで使用しています。シート "UG list" col Aの値がシート "Latency" B colにあるかどうかをチェックします。vlookupに基づく列の更新
現在、一致するものがある場合は、シート「UGリスト」自体に値を貼り付けています。しかし、代わりに、 "UG"というテキストが一致する場合は、Qの "Latency"シートで更新する必要があります。
これを実装するための提案はありますか?
Sub vlookup()
Dim cl As Range, Dic As Object
Set Dic = CreateObject("Scripting.Dictionary"): Dic.Comparemode = vbTextCompare
With Sheets("Latency")
For Each cl In .Range("B2:B" & .Cells(Rows.count, "C").End(xlUp).Row)
If Not Dic.exists(cl.Value) Then Dic.Add cl.Value, cl.Row
Next cl
End With
With Sheets("UG list")
For Each cl In .Range("A2:A" & .Cells(Rows.count, "A").End(xlUp).Row)
If Dic.exists(cl.Value) Then cl.Offset(, 1).Value = cl.Value
Next cl
End With
Set Dic = Nothing
End Sub
これは完璧に上手く動いています..もう少し小さい質問..私は他のシートにも同じことをやっていますか?私は他のシートでvlookupを行い、特定のシートのcolQを更新し、 "UGリスト"をソースとして更新することを意味しますか? –
あなたのロジックは、あなたは値と行番号を持つ別々の辞書が必要になります。それぞれのシートに対してループを行い、すべての辞書をチェックし、もしそれらが存在すればcol Qを更新します。しかし、 VLOOKUPのような式を使って、辞書の代わりにこれを行います。 – cyboashu