繁体   English   中英

从网站导入数据:将Java Script代码转换为VBA代码

[英]Import data from Website: Converting Java Script code into VBA code

我需要从该网站导入一些数据, 为此我编写了一个小的Java脚本代码,下面将对此进行介绍。

提取分子量代码

x = document.getElementById('summary')
y = x.getElementsByTagName('h2')
count = x.getElementsByTagName('h2').length
flag=0
for (i = 0; i < count; i++){
  if(y.item(i).textContent == 'Molecular Weight'){
    console.log(y.item(i).nextSibling.textContent);
   flag=1;
  }
}
if(flag==0)
console.log("Nothing Found");

从物理属性表中提取数据的代码

x=document.getElementById('physical')
y=x.getElementsByClassName('TableRow')
count =x.getElementsByClassName('TableRow').length
for(i=0;i<count;i++){
   z=x.getElementsByClassName('TableRow').item(i)
   z.children[0].textContent
   z.children[1].textContent
}

那么可以通过Java脚本导入到excel吗?

我认为VBA在此方面会更好,但是我是VBA的新手,无法确定在VBA中编写代码的适当方式。 请给我提示,以便我朝正确的方向前进。

您可能需要尝试以下操作,而不是通过javascript导入。 在excel中,您可以通过转到File -> Open Url将网站导入电子表格。 假设站点的结构相同,无论您要寻找的分子是什么,都可以创建VBA脚本以仅通过查看单元地址来提取数据。 您可以使用Tools -> Macro -> Record New Macro来记录您的操作。 然后,一旦完成,您可以转到Tools -> Visual Basic Editor查看VBA代码。 然后,您可以从那里改进代码以进一步自动化该过程。

这是一个例子:

Workbooks.Open Filename:="http://chem.sis.nlm.nih.gov/chemidplus/rn/112-92-5"
Range("A44").Select
Selection.Copy
Sheets.Add
Sheets("Sheet2").Select
Range("B4").Select
ActiveSheet.Paste

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM