以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]EXCEL怎么筛选删除不需要的行? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=160294) |
||||
-- 作者:yangsion -- 发布时间:2021/1/27 21:19:00 -- [求助]EXCEL怎么筛选删除不需要的行? 我下面的代码实现了选择文件删除不需要的行,填充必须的数据,请问一下怎么删除 存货编码不包含“(小计)”的行?搞了半天没找到这样的资料,麻烦大神指教一下,谢谢。 Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 For Each fl As String In dlg.FileNames Dim Book As New XLS.Book(fl ) \'定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表 Dim YZD As String = sheet(2,1).Text sheet.rows.RemoveAt(0) sheet.rows.RemoveAt(0) sheet.rows.RemoveAt(0) sheet.rows.RemoveAt(0) sheet.rows.RemoveAt(0) sheet(0,1).value = "生产运作单" For r As Integer = 1 To SHEET.Rows.Count - 2 \'填入数据 sheet(R,1).value = YZD Next sheet(1,1).value = YZD Book.Save("c:\\生产运作单\\test.xls") \'保存工作簿 Next End If Dim Proc As New Process \'打开工作簿 Proc.File = "C:\\生产运作单\\test.xls" Proc.Start() |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/28 9:00:00 -- For r As Integer = SHEET.Rows.Count - 1 to 1 step -1 \'填入数据 if sheet(r,0).value like "(小计)*" then sheet.rows.RemoveAt(r) end if Next
|
||||
-- 作者:yangsion -- 发布时间:2021/1/28 10:18:00 -- 谢谢大神,参考您的代码已经完成删除不包含(小计)的行,那如果我要在这个之后在把包含(小计)的行去掉“(小计)”怎么写哦?,用替换吗? For r As Integer = SHEET.Rows.Count - 1 To 1 Step -1 \'删除不包含小计的行 If sheet(r,0).value Like "(小计)*" = False Then sheet.rows.RemoveAt(r) End If Next For r2 As Integer = SHEET.Rows.Count - 1 To 1 Step -1 \'删除(小计)字样 If sheet(r2,0).value Like "(小计)*" Then sheet.rows.替换(r) ?? End If Next |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/28 10:22:00 -- If sheet(r2,0).value Like "(小计)*" Then sheet(r2,0).value = sheet(r2,0).value.tostring().replace("(小计)","") End If
|
||||
-- 作者:yangsion -- 发布时间:2021/1/28 14:45:00 -- 完美,谢谢大神。帮助里面都找不到这样的资料 |
||||
-- 作者:有点蓝 -- 发布时间:2021/1/28 14:55:00 -- 有的: |