ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 如何使用xmlhttp与数组导入错位的XML数据

如何使用xmlhttp与数组导入错位的XML数据

作者:绿色风 分类: 时间:2022-08-18 浏览:82
楼主
xmyjk
Q:如何使用xmlhttp与数组xmlhttp与数组导入错位的XML数据?


A:
  1. Option Explicit
  2. Sub test()
  3.     Dim tmp() As String, i As Long, n As Long, JC As Worksheet, FILE_PATH As String
  4.     Dim J As Integer
  5.       
  6.     On Error Resume Next
  7.     If Sheets("机构评级汇总") Is Nothing Then
  8.     Set JC = Sheets.Add(AFTER:=Worksheets("起始页"))
  9.        JC.Name = "机构评级汇总"
  10.     Else
  11.      Set JC = Sheets("机构评级汇总")
  12.         Worksheets("机构评级汇总").Activate
  13.         Cells.Select
  14.         Selection.ClearContents
  15.     End If
  16.    
  17.     [a1:k1] = Split("代码,评级日期,机构数,最新评级,上月机构数,上月评级,调整幅度,2010A,2011E,2012E,2013E", ",")
  18.      FILE_PATH = ThisWorkbook.Path & "\" & "机构评级汇总.xml"
  19.      
  20.     Application.ScreenUpdating = False
  21.     Open FILE_PATH For Input As #1
  22.     tmp() = Split(Split(Split(StrConv(InputB(LOF(1), 1), vbUnicode), "<lines>")(1), "</lines>")(0), "</line>")
  23.     Close #1
  24.    
  25.     For i = 0 To UBound(tmp)
  26.      n = [a65536].End(xlUp).Row + 1
  27.      Cells(n, 1) = Split(Split(tmp(i), "<stk>")(1), "</stk>")(0)
  28.       For J = 3 To 12
  29.         Cells(n, J - 1) = Split(Split(Split(tmp(i), "<dat col=""" & J & """")(1), "</dat>")(0), ">")(1)
  30.       Next
  31.     Next
  32.         
  33.     Erase tmp
  34.    
  35.     [a:k].Columns.AutoFit
  36.     Application.ScreenUpdating = True
  37.     MsgBox "Ok"
  38. End Sub

决策数据.rar
2楼
xyf2210
谢谢分享

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap