Python能识别Excel单元格中的公式吗?

Python能否从Excel单元格中识别公式并忽略处理有公式的单元格?

是的,但不是重新发明轮子。 我会使用这些库之一 。 他们似乎提供你所需要的东西,也有一个教程。

根据2011年1月 xlrd 作者提供的答案 , xlrd目前不提供对Excel公式的访问。 正如我目前正在试图做到这一点,我倾向于相信,这仍然是这样 – 我正在使用0.9.2版本,根据Github是最新的。 我刚刚注意到PyPI上有xlrd1 ,但列出的两个限制是

  • 不支持Microsoft Excel 2007/2010格式的文件
  • 不能从input文件中提取公式

这也没有任何喜悦。

虽然我的search不是很详尽(我很匆忙),但我认为在Python中访问公式的唯一可靠方法是通过Mark Hammond的pywin32访问底层的COM对象。 很显然,你将需要安装Excel,所以这将限制这个解决scheme远离Windows的可用性。 我目前正在使用Python Excels网站的一些启发。 恐怕我还没有任何可靠或一致的代码 – 我的回答主要是为了警告xlrd可悲的是还不是通过Python获取Excel公式的答案。

=== 2014年3月18日顺便说一句,因为我对于stackoverflow是一个中等新的东西,目前缺乏评论或推荐的能力,我想补充一点,这个答案是特别针对上一个问题的答案的不足之处Python从Excel单元格中识别公式? 其中xlrd所有的优点都没有。 我发表了一个不完整的研究答案的主要原因是警告其他用户的误报,尽pipe它的优点,xlrd是在这种情况下。

我目前从事许多工作,其中一个涉及到这个问题。 如果我find一个“做”的方法,而不是“可能”回答这个问题的方法,除了我提供的方法之外,我会修改我的答案。