Board logo

标题: [问题求助] VBS如何查找mdb文件里指定列中含有指定字符串的行 [打印本页]

作者: DDDYJQ1    时间: 2014-5-11 20:43     标题: VBS如何查找mdb文件里指定列中含有指定字符串的行

求个VBS用于查找db1.mdb,要求,比如输入“云人二厶”等1-5个汉字时,查找“详细拆分”列,同时含有“云人二厶”这五个汉字的行,也说是说“云人二厶”这五个汉字在“详细拆分”列也可能顺序不一样,比如“人二云厶”或者中间可能有其他汉字或字母,把找到的行后四列内容都显示出来,不知说清楚了没有,先谢了
作者: apang    时间: 2014-5-11 23:33

  1. Do
  2.     Input = InputBox("输入:")
  3.     If IsEmpty(Input) Then WScript.Quit
  4. Loop while Input = ""
  5. Set oExcel = CreateObject("Excel.Application")
  6. oExcel.Visible = false
  7. oExcel.WorkBooks.Open("d:\test\db1.mdb")
  8. oExcel.WorkSheets(1).Activate
  9. row = oExcel.ActiveSheet.UsedRange.Rows.Count
  10. For i = 2 to row
  11.     flag = true
  12.     For j = 1 to Len(Input)
  13.         If InStr(oExcel.Cells(i,4), Mid(Input,j,1)) = 0 Then
  14.             flag = false : Exit For
  15.         End if
  16.     Next
  17.     If flag Then
  18.         s = ""
  19.         For j = 2 to 5
  20.             s = s & oExcel.Cells(i,j) & vbTab
  21.         Next
  22.         MsgBox s
  23.     End If
  24. Next
  25. If s = "" Then MsgBox "Not Found"
  26. oExcel.ActiveWorkBook.Saved = true
  27. oExcel.WorkBooks.Close
  28. oExcel.Quit
复制代码

作者: DDDYJQ1    时间: 2014-5-12 14:08

谢谢,可是出现如下错误
脚本:D:、TEST、1.VBS
行:15
字符:1
错误:EXCEL无法直接打开ACCESS MDB 文件。如果将ACCESS数据导入到EXCEL中,可使用“获取外部数据”命令,......
代码:800A03EC
源:MICROSOFT EXCELL
是不是我的电脑有什么问题?
作者: apang    时间: 2014-5-12 16:17

回复 3# DDDYJQ1


    我用的是ms-office2007,没有安装Access,测试顶楼附件没有问题
作者: CrLf    时间: 2014-5-12 17:37

本帖最后由 CrLf 于 2014-5-12 17:40 编辑

也许可以用 ADODB + spl 语句,参考:http://bbs.bathome.net/redirect. ... 8&fromuid=30406
作者: DDDYJQ1    时间: 2014-5-12 19:13

谢谢巡查,可惜我也看不懂,是不是DB1.MDB改用用EXCEL就不会出问题,再帮我看看,我传个EXCEL上来,代码要如何改?先谢了
作者: apang    时间: 2014-5-12 23:05

回复 6# DDDYJQ1


    第8行的路径和文件名改成真实路径和文件名,第12行的2改成1
作者: DDDYJQ1    时间: 2014-5-13 08:58

谢了,可以用,多谢了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2