Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA基于列中最后一个唯一值复制行_Vba_Excel - Fatal编程技术网

VBA基于列中最后一个唯一值复制行

VBA基于列中最后一个唯一值复制行,vba,excel,Vba,Excel,我试图在excel电子表格中对数据进行汇总。我想复制基于第一列的最后一个唯一行,以下是数据示例: DocOrd# text Value 1 text .1 1 text .2 1 text .3 1 text .4 2 text 2 2 text 4 2 text 6 2 text 8 3

我试图在excel电子表格中对数据进行汇总。我想复制基于第一列的最后一个唯一行,以下是数据示例:

DocOrd#   text    Value

1         text    .1
1         text    .2
1         text    .3
1         text    .4
2         text     2
2         text     4
2         text     6
2         text     8
3         text     1
3         text     2
3         text     3
3         text     4
我想要的是:

DocOrd#   text    Value

1         text    .4
2         text     8 
3         text     4

感谢您提供的任何帮助

这可能会有所帮助-它会循环浏览您的数据(假设在
Sheet1
中从单元格
A1
开始),获取每个
DocOrd
的最后一个条目,并将其放在
Sheet2

Sub CopyLastEntry()
    Dim entries As Range, entry As Range, cnt As Long

    Set entries = Range("A2:A" & Range("A1").End(xlDown).Row) //Change as per your s/sheet
    cnt = 1

    For Each entry In entries
        If entry <> entry.Offset(1, 0) Then
            Range(entry, entry.Offset(0, 3)).Copy Destination:=Worksheets(2).Range("A" & cnt)
            cnt = cnt + 1
        End If
    Next entry
End Sub
子CopyLastEntry()
将条目变暗为范围,条目变为范围,cnt变长
设置条目=范围(“A2:A”和范围(“A1”).End(xlDown).Row)//根据您的s/sheet进行更改
cnt=1
对于条目中的每个条目
如果输入偏移量(1,0),则
范围(条目,条目。偏移量(0,3))。复制目标:=工作表(2)。范围(“A”和cnt)
cnt=cnt+1
如果结束
下一个条目
端接头
当你说“唯一行”是什么意思?给定的
文档中的最后一个条目35;