以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]这样的要求在狐表中如何完成?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9577)

--  作者:fox2011
--  发布时间:2011/4/24 18:42:00
--  [求助]这样的要求在狐表中如何完成?
如图大家看一下。我有一个这样的数据。35000行。现在要删除不要的数据。删除的规则是如图片。型号列后面的三位数量如果不是070-072的话。都要删除。这个应该如何操作?注意不能筛选。如果筛选的话在型号列减号(-)前面也有是070或者071或者072的

图片点击可在新窗口打开查看此主题相关图片如下:图像 1.png
图片点击可在新窗口打开查看



[此贴子已经被作者于2011-4-24 18:44:20编辑过]

--  作者:rcsy001
--  发布时间:2011/4/24 20:10:00
--  

这个很简单啊,直接删除后面位是070,071,072的就行了


--  作者:e-png
--  发布时间:2011/4/24 21:25:00
--  

with tables("Sheet1")

for i as integer = 0 to .rows.count-1

    if .rows(i)("型号").split("-")(1) = "071" orelse .rows(i)("型号").split("-")(1) = "072" orelse .rows(i)("型号").split("-")(1) = "073"

        .rows(i).delete()

    end if

next

End With

 

或:

DataTables("Sheet1").DeleteFor("[型号]  =‘201 10410-070’")

DataTables("Sheet1").DeleteFor("[型号] = ‘201 10410-071’")

DataTables("Sheet1").DeleteFor("[型号] = ‘201 10410-072’")

 

[此贴子已经被作者于2011-4-24 22:30:57编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/4/25 7:43:00
--  

楼主要的应该是这个:

 

With Tables("Sheet1")
    For i As Integer = .Rows.Count-1 To 0 Step - 1
        Dim v As String = .rows(i)("型号")
        If v.EndsWith("-070") OrElse v.EndsWith("-071") OrElse v.EndsWith("-072")

        Else
            .rows(i).delete()
        End If
    Next
End With

[此贴子已经被作者于2011-4-25 7:44:01编辑过]

--  作者:fox2011
--  发布时间:2011/4/27 10:04:00
--  
谢谢二位。呵呵。但是没有接触过代码。我还不知道在什么地方录入这些代码呢?
--  作者:狐狸爸爸
--  发布时间:2011/4/27 10:05:00
--  

直接将4楼代码复制到命令窗口执行即可。