用Excel下载表格

我想下载这张关于Libor费率的表格:

http://online.wsj.com/mdc/public/page/2_3020-libor.html (特定的,其中约USD)

通过使用数据/从网站导入,如果我select一次表,我按导入它不会出现表,但是如果我导入整个页面

有没有办法,使用VBA可能,我可以在哪里获得该表?

作为VBA的替代品,您可以下载并安装名为Power Query的免费Microsoft Excel插件。 安装Power Query后,步骤如下:

  • 点击Power Queryfunction区
  • 点击“From Web”图标
  • 粘贴网站的url
  • 在侧栏上,selectTable0并编辑查询
  • 您将看到已经应用了一些转换步骤。 添加以下转换:
  • 删除顶部行(只有一行)
  • 将第一行设置为标题
  • 删除底行(27行)
  • 单击“closures并加载”将转换的数据写入Excel文件中的表格。

现在只需要在网站有新号码时刷新数据连接。

屏幕截图包含Power Queryfunction区的Excel文件和后台的结果表。 顶部的窗口是Power Query界面。 转换步骤在右侧的面板中列出。

在这里输入图像说明

每个转换步骤都以“M”语言logging。 在Power Query中,您可以单击视图>高级编辑器来查看和更改M代码。 这是一个非常强大的语言,其语法与Excel公式或VBA完全不同。 我只是在这里提到它,让你意识到转换可以在function区上单击图标之外进行定制。 生成的代码是:

let Source = Web.Page(Web.Contents("http://online.wsj.com/mdc/public/page/2_3020-libor.html")), Data0 = Source{0}[Data], #"Changed Type" = Table.TransformColumnTypes(Data0,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}}), #"Removed Top Rows" = Table.Skip(#"Changed Type",1), #"First Row as Header" = Table.PromoteHeaders(#"Removed Top Rows"), #"Removed Bottom Rows" = Table.RemoveLastN(#"First Row as Header",27) in #"Removed Bottom Rows"