Vba 使用excel中的新说明更新明细表

Vba 使用excel中的新说明更新明细表,vba,excel,formula,Vba,Excel,Formula,我有两张床单。每个都有大约20k的零件号,我需要从表1的B列中获取零件号,检查它是否存在于表2的A列中,如果存在,则获取该行表2的B列内容,并将其粘贴到带有公式的单元格中。零件号列表与100%不匹配,因此我无法简单地排序和复制/粘贴 谢谢你的帮助 考虑下面的例子: Sub PopulateDescriptions() Dim objList As Object Dim objSrc As Range Dim objDst As Range Dim arrList(

我有两张床单。每个都有大约20k的零件号,我需要从表1的B列中获取零件号,检查它是否存在于表2的A列中,如果存在,则获取该行表2的B列内容,并将其粘贴到带有公式的单元格中。零件号列表与100%不匹配,因此我无法简单地排序和复制/粘贴


谢谢你的帮助

考虑下面的例子:

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

考虑下面的例子:

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

请指定“带公式的单元格”的表和列是什么。您可以展示一些您尝试过的示例吗?从您的描述中,
VLOOKUP()
将满足您的需要。带公式的单元格将位于表1上。C列将是公式所在的位置请指定“带公式的单元格”的表和列是什么。你能展示一些你尝试过的例子吗?根据你的描述,
VLOOKUP()
将满足你的需要。带有公式的单元格将在第1页上。C列将是公式所在的位置!谢谢,效果很好!!非常感谢你,我真的很感谢你的帮助!哇!谢谢,效果很好!!非常感谢你,我真的很感谢你的帮助!