作者ptguitar (佩蒂吉他)
看板Office
标题[算表] 只保留最新一笔的vba写法?
时间Mon Apr 3 11:43:44 2017
软体:excel
版本:2007以上
我用google表单有一堆报名资料
但是有人重新报名就是会有最新资料
我要只保留最新资料
找到下面的函数
http://isvincent.pixnet.net/blog/post/45005972
=IF(COUNTIF(A$2:A2,A2)<COUNTIF(A$2:A$26,A2),"",A2)
尝试用到vba内
Sub Macro1()
Dim x, y As Long
Dim i As Integer
Sheets("资料").Select
For i = 1 To Range("A1").End(xlDown).Row
x = Application.CountIf(Range("A1:A" & i), Range("A" & i))
y = Application.CountIf(Range("A1", Range("A1").End(xlDown)), Range("A" & i))
If x > y Then
Rows(i).Select
Selection.Delete Shift:=xlUp
End If
Next i
End Sub
不过发现似乎我的逻辑还是有问题
不知道那边要修改 XD
感谢各位大大...
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.136.224.235
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1491191027.A.6BD.html
1F:→ soyoso: 将回圈以递减step -1方式,判断上改为y>x 04/03 12:32
2F:→ soyoso: 其他无变更,以原文网页内资料执行後 04/03 12:35
感谢S大指点
http://i.imgur.com/MtzF7dO.jpg
会成功
不过最後出现那一行是错误....
※ 编辑: ptguitar (114.136.224.235), 04/03/2017 12:44:23
4F:→ ptguitar: 我知道了 最後回圈不能到0 04/03 12:45