作者ptguitar (佩蒂吉他)
看板Office
标题[算表] 删除多笔资料vba
时间Wed Apr 5 16:51:26 2017
软体:excel
版本:2007以上
我有数个档案
要删除A跟B栏位符合某些条件的那一列
条件要随时可以更改
後来写了个巨集
范例档案
https://drive.google.com/open?id=0BwCgrQhGgaw7V24xcG1reko1ZjQ
主要是这段vba
Do While openfile <> ""
For J = 1 To abc
Workbooks(thiswrkname).Activate
Sheets("删除").Select
YY = Range("A" & 1 + J)
Workbooks.Open filepath & openfile
ActiveSheet.Select
For i = [a65536].End(xlUp).Row To 1 Step -1
MM = Application.Match(YY, Range("A" & i & ":B" & i), 0)
If IsError(MM) = False Then Rows(i).Delete
Next i
Next J
Workbooks(openfile).Save
Workbooks(openfile).Close
openfile = Dir
Loop
回圈加上回圈我都失败
若只是单独里面那圈只删一笔就会成功
不知道是那边想错了
感谢各位指点@@
还有若是这个状况不知道有什麽更好的写法
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.250.67.77
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1491382289.A.D93.html
1F:→ soyoso: 1.counter为J的回圈取消;YY的变数放置counter为i的回圈内 04/05 17:14
2F:→ soyoso: 2.工作表函数match的第2引数,指定workbooks为该巨集活页 04/05 17:15
3F:→ soyoso: 簿名称及副档名,巨集内有以thiswrkname取得,後面接 04/05 17:17
4F:→ soyoso: 的修改为range以单栏,变数使用上可不用配合变数i 04/05 17:21
5F:→ soyoso: 抱歉因删除A跟B栏符合条件的那一列,更正为下方回文 04/05 17:33
6F:→ soyoso: 1.将巨集内workbooks.open filepath & openfile移至 04/05 17:33
7F:→ soyoso: do while openfile <>""下方 04/05 17:34
8F:→ soyoso: 於YY=range("a" & 1+j)的下方打上workbooks(openfile) 04/05 17:34
9F:→ soyoso: .activate,其他部分无变动 04/05 17:35
11F:→ ptguitar: 感谢S大的热心指导 真的帮助我很多很多^^ 04/05 20:19