如何在EXCEL获取股票实时数据(Power Query)

Power Query(函数抓取所有数据,一劳永逸)

步骤1:准备股票代码列表

  1. 在Excel中新建工作表,创建两列:

    • 股票代码(如:600000、000001等)
    • 交易所代码(沪市为sh,深市为sz)。
  2. 添加第三列URL,通过公式生成对应股票的API链接。例如:

    使用东方财富网接口:

    = "http://quote.eastmoney.com/" & [交易所代码] & Text.From([股票代码]) & ".html"
    

步骤2:通过Power Query导入数据

  1. 导入股票代码表

    • 点击Excel菜单栏的数据从表格/区域,将股票列表导入Power Query编辑器。
  2. 添加自定义列获取网页数据

    • 在Power Query编辑器中,点击添加列自定义列,输入以下公式:

      = Web.Page(Web.Contents([URL]))
      

      允许隐私提示中的访问权限。

  3. 展开数据列

    • 点击新生成的Data列右侧的展开按钮(📌),选择需要提取的字段(如最新(股价)、涨跌幅等)。不同数据源字段位置可能不同,需根据实际返回结构调整(例如东方财富网数据可能位于{8}[Data])。

步骤3:数据清洗与格式化

  1. 删除冗余列
    • 移除URL、交易所代码等无关列。
  2. 拆分数据字段
    • 使用拆分列功能(如按分隔符~拆分),提取最新(股价)、名称、涨跌幅等关键信息。
  3. 重命名列
    • 根据数据含义命名,例如“最新价”“涨跌幅”“成交量”等。

步骤4:设置自动刷新

  1. 配置刷新频率
    • 返回Excel后,右键点击数据区域 → 数据连接属性 → 勾选刷新频率(如每2分钟)。
  2. 手动刷新
    • 点击数据全部刷新,或使用快捷键Ctrl+Alt+F5

注意事项

  1. 数据源稳定性
    • 部分接口(如东方财富网)可能有访问限制,需确保网络畅通且接口可用。
  2. 字段匹配问题
    • 不同网站返回的数据结构可能不同,需通过预览数据调整拆分逻辑。
  3. 错误处理
    • 在Power Query中添加try...otherwise语句,避免因单只股票数据获取失败中断整个流程。
posted @ 2025-02-11 00:13  云尼  阅读(9195)  评论(0)    收藏  举报