在 excel 中使用新描述更新零件清单
Update parts list with new descriptions in excel
我有两张纸。每个都有大约 20k 的零件号,我需要从 Sheet 1 栏中获取零件号。 B、查看Sheet2col.A中是否存在,如果存在则抓取Sheet2列中的内容。 B,并将其粘贴到包含公式的单元格中。部件号列表不是 100% 匹配所以我不能简单地排序和 copy/paste.
感谢您的帮助!
考虑以下示例:
Sub PopulateDescriptions()
Dim objList As Object
Dim objSrc As Range
Dim objDst As Range
Dim arrList() As Variant
Dim arrDesc() As Variant
Dim i As Long
Set objList = CreateObject("Scripting.Dictionary")
With Sheets("Sheet 2")
arrList = Intersect(.UsedRange, .Range("A:B")).Value
End With
For i = 1 To UBound(arrList, 1)
objList(arrList(i, 1)) = arrList(i, 2)
Next
With Sheets("Sheet 1")
Set objSrc = Intersect(.UsedRange.Rows, .Range("A:A"))
End With
Set objDst = objSrc.Offset(0, 2) ' column C
arrList = objSrc.Value
arrDesc = objDst.Value
For i = 1 To UBound(arrList, 1)
If objList.Exists(arrList(i, 1)) Then
arrDesc(i, 1) = objList(arrList(i, 1))
End If
Next
objDst.Value = arrDesc
End Sub
我有两张纸。每个都有大约 20k 的零件号,我需要从 Sheet 1 栏中获取零件号。 B、查看Sheet2col.A中是否存在,如果存在则抓取Sheet2列中的内容。 B,并将其粘贴到包含公式的单元格中。部件号列表不是 100% 匹配所以我不能简单地排序和 copy/paste.
感谢您的帮助!
考虑以下示例:
Sub PopulateDescriptions()
Dim objList As Object
Dim objSrc As Range
Dim objDst As Range
Dim arrList() As Variant
Dim arrDesc() As Variant
Dim i As Long
Set objList = CreateObject("Scripting.Dictionary")
With Sheets("Sheet 2")
arrList = Intersect(.UsedRange, .Range("A:B")).Value
End With
For i = 1 To UBound(arrList, 1)
objList(arrList(i, 1)) = arrList(i, 2)
Next
With Sheets("Sheet 1")
Set objSrc = Intersect(.UsedRange.Rows, .Range("A:A"))
End With
Set objDst = objSrc.Offset(0, 2) ' column C
arrList = objSrc.Value
arrDesc = objDst.Value
For i = 1 To UBound(arrList, 1)
If objList.Exists(arrList(i, 1)) Then
arrDesc(i, 1) = objList(arrList(i, 1))
End If
Next
objDst.Value = arrDesc
End Sub