ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 513|回复: 3

请问大家能帮助看下那代码为什么不能下载全部的数据?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-2-28 22:05 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
急,如附件,原来运行正常,现在一运行,只能下载20多页就停止了,请大家指点下。

数据不能全部下载.zip

46.39 KB, 下载次数: 6

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-2-28 22:05 | 显示全部楼层
  1. Sub CFDA()

  2.     Dim htm As String, htm2 As String, i As Long, j As Long, p As Long, v() As String, title, arr() As String

  3.     title = Split("注册证号,原注册证号,注册证号备注,分包装批准文号,公司名称(中文),公司名称(英文),地址(中文),地址(英文),国家/地区(中文),国家/地区(英文),产品名称(中文),产品名称(英文),商品名(中文),商品名(英文),剂型(中文),规格(中文),包装规格(中文),生产厂商(中文),生产厂商(英文),厂商地址(中文),厂商地址(英文),厂商国家/地区(中文),厂商国家/地区(英文),发证日期,有效期截止日,分包装企业名称,分包装企业地址,分包装文号批准日期,分包装文号有效期截止日,产品类别,药品本位码,药品本位码备注", ",")

  4.   
  5.     [b1:ag1] = title

  6.     With CreateObject("microsoft.xmlhttp")

  7.         For p = 1 To 1000

  8.             .Open "get", "http://app1.sfda.gov.cn/datasearch/face3/search.jsp?tableId=36&tableName=TABLE36&bcId=124356651564146415214424405468&curstart=" & p, False

  9.             .send

  10.             Do While Not .ReadyState = 4

  11.                 DoEvents

  12.             Loop

  13.             htm = .responsetext

  14.             v = Filter(Split(htm, "'"), "content.jsp?tableId=36&tableName=TABLE36&tableView=进口药品&Id=")

  15.             ReDim arr(UBound(v), 32)

  16.             For i = 0 To UBound(v)

  17.                 arr(i, 0) = Split(Split(Split(htm, v(i))(1), ">")(1), "<")(0)

  18.                 .Open "get", "http://app1.sfda.gov.cn/datasearch/face3/" & v(i), False

  19.                 .send

  20.                 Do While Not .ReadyState = 4

  21.                     DoEvents

  22.                 Loop

  23.                 htm2 = Replace(Replace(.responsetext, """>", "%>"), "</a>", "")

  24.                 For j = 1 To 32

  25.                     arr(i, j) = Split(Split(Split(htm2, title(j - 1) & "</td>")(1), "%>")(1), "</td></tr>")(0)

  26.                 On Error Resume Next
  27.                 Next
  28.                

  29.             Next

  30.              [a65536].End(3).Offset(1, 0).Resize(UBound(v) + 1, 33) = arr

  31.         Next



  32.     End With



  33. End Sub

复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-3-6 22:34 | 显示全部楼层
再次求助大家!有人能指点下吗?

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-3-7 22:22 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-25 00:50 , Processed in 0.032654 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表