Excel-根据匹配值复制粘贴值

时间:2018-08-02 10:34:20

标签: excel copy-paste lookup

我很容易就感到沮丧,因为我不明白这一点。做了相当多的搜索,但并未发现类似的问题和一致的答案。希望这里有人可以帮助我,因为我不希望手动进行此操作。

我想要做的是用来自其他行中同一工作表的信息来丰富Excel中现有工作表的行。提到丰富是因为A列中的值必须匹配。在这种情况下,其他列的值需要用包含完整数据的行中的内容填充。我将在下面提供一个示例,其中当然包含说明性数据。

这就是我现在拥有的:

Column A    Column D       Column E      Column F

hash1          AA             BB            CC  
hash1            
hash1  
hash2          FF             GG            HH  
hash3          PP             YY            QQ  
hash3  
hash3

这是我想要的结果,其中的更改/丰富程度以粗体标记:

Column A       Column D       Column E      Column F

hash1          AA             BB            CC  
hash1          **AA             BB            CC**  
hash1          **AA             BB            CC**  
hash2          FF             GG            HH  
hash3          PP             YY            QQ  
hash3          **PP             YY            QQ**  
hash3          **PP             YY            QQ**

各行的排列顺序始终是:第一行包含完整的数据,随后的行中不包含其他列的数据。以防万一。此表包含约。 20000行。

非常感谢!

1 个答案:

答案 0 :(得分:0)

xlR1C1样式公式可以返回上一行的匹配值。

enter image description here

Sub rtweqr()

    With Worksheets("sheet10")
        With .Range(.Cells(2, "A"), .Cells(Rows.Count, "A").End(xlUp).Offset(0, 6))
            .Cells.Sort Key1:=.Columns(1), Order1:=xlAscending, _
                        Key2:=.Columns(6), Order2:=xlAscending, _
                        Orientation:=xlTopToBottom, Header:=xlYes
            .Cells.Sort Key1:=.Columns(1), Order1:=xlAscending, _
                        Key2:=.Columns(4), Order2:=xlAscending, _
                        Key3:=.Columns(5), Order3:=xlAscending, _
                        Orientation:=xlTopToBottom, Header:=xlYes
        End With

        With .Range(.Cells(2, "E"), .Cells(Rows.Count, "A").End(xlUp).Offset(0, 6))
            On Error Resume Next
            .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = _
              "=index(r1c:r[-1]c, match(rc1, r1c1:r[-1]c1, 0))"
            On Error GoTo 0
            'optional reversion to formulas' returned values
            '.value=.value
        End With
    End With

End Sub

enter image description here