我需要创建一个脚本,用于从复杂的Excel 2003文件(在单个工作表内有多个工作表和不同的表)中提取一些数据,并生成需要的不同XML文件针对给定的XSD文件进行验证。从Excel文件创建有效XML文件的最佳工具
我的首选语言是Python; 来创建和验证XML文件我会去lxml。
你对解析XLS文件有何建议?
是xlrd适用于复杂Excel文件的正确工具吗?
或者我是否需要手动将所有工作表转换为CSV格式,并逐行读取文件,拆分并获取数据?
我接受C#,VB6,VBA建议。
我需要创建一个脚本,用于从复杂的Excel 2003文件(在单个工作表内有多个工作表和不同的表)中提取一些数据,并生成需要的不同XML文件针对给定的XSD文件进行验证。从Excel文件创建有效XML文件的最佳工具
我的首选语言是Python; 来创建和验证XML文件我会去lxml。
你对解析XLS文件有何建议?
是xlrd适用于复杂Excel文件的正确工具吗?
或者我是否需要手动将所有工作表转换为CSV格式,并逐行读取文件,拆分并获取数据?
我接受C#,VB6,VBA建议。
[免责声明:我xlrd的作者]
xlrd很适合为这种工作。从PyPI获取最新版本。从教程找到here的味道。 XLSX支持在alpha测试中;如果您需要,请发邮件给我。 save-as-CSV方法的尴尬和损失是促使我编写xlrd的原因之一。
你的图书馆工作就像一个魅力,再次感谢。 – systempuntoout 2010-11-18 15:10:25
Xlrd没问题。我们广泛使用它来导入XLS文件,其中包含多个工作表和以自定义(非Latin-1)编码方式呈现的数据。
我不能回答xlrd/python是否是正确的工具 - 因为我不太了解python。
但是有很多方法可以访问excel数据......主要的是你有VBA直接构建到Excel中。
然后,你必须Ado.net See David Hayden's article here它允许你通过任何DOTNET的语言访问数据......甚至IronPython
表有多个表(不同行上的标题),在这种情况下,ADO也能工作吗? – systempuntoout 2010-05-13 09:01:17
我试过ADO.net,它对复杂的表单不合适。把它们看作是独立的床单。 xlrd看到他们正确,但那么你必须导入python :-) – 2012-10-01 08:24:52
我确信此任务的最简单解决方案是将Excel VBA与MSXML解析器一起使用。查看here了解一些链接如何在VBA中使用MSXML分析器来读取XML文件;我认为,您可以轻松地将它用于编写XML文件。
难道是.xslx Office 2007格式? – Tomalak 2010-05-13 07:15:48
脚本或进程是否可以访问Excel? – Adrian 2010-05-13 08:13:40
@Adrian当然。 – systempuntoout 2010-05-13 08:15:25