技术咨询:能否在MS Excel中获取Mutual Fund数据?附示例基金
在Excel中获取共同基金数据的方案
当然可以在Excel中获取共同基金数据,针对你提到的Navi Nifty 50 Index Fund Direct Growth,以下是几种实用的内置方法:
1. 利用WEBSERVICE + FILTERXML函数提取实时净值
这个组合可以从公开结构化数据源中抓取基金数据,以印度AMFI(共同基金协会)的公开数据为例,该基金的AMFI代码为119552,你可以使用以下公式提取最新净值:
=FILTERXML(WEBSERVICE("https://www.amfiindia.com/spages/NAVAll.txt"), "//tr[contains(td[2],'119552')]/td[4]")
- 原理:
WEBSERVICE获取AMFI的基金净值列表文本,FILTERXML通过XPath定位到目标基金的净值字段 - 注意:如果数据源格式更新,需要调整XPath路径;部分Excel版本(如Mac版)可能不支持
WEBSERVICE函数
2. 用Power Query批量获取并自动刷新
Power Query是更灵活的方案,适合批量管理多只基金数据:
- 打开Excel,切换到「数据」选项卡,选择「从Web」
- 输入AMFI的基金净值页面地址,进入Power Query编辑器
- 使用「筛选」功能定位到Navi Nifty 50 Index Fund Direct Growth,保留所需字段(如净值、更新日期)
- 点击「关闭并上载」,将数据导入工作表;可设置「数据」→「全部刷新」实现自动更新
3. 尝试Excel扩展数据类型(部分版本支持)
部分地区的Excel版本支持基金数据类型识别:
- 在单元格输入基金名称「Navi Nifty 50 Index Fund Direct Growth」
- 右键单元格,选择「数据类型」→「股票/基金」(选项名称可能因版本而异)
- 若识别成功,单元格会显示基金卡片,点击可展开查看净值、走势等详细数据
注意事项
- 优先选择官方公开的数据源(如AMFI),避免使用非正规第三方接口导致数据失效
- Power Query支持自定义刷新频率,适合长期跟踪基金数据
内容的提问来源于stack exchange,提问作者Jey
相关产品推荐
相关产品推荐

