Excel Automation for Business解决scheme和服务器端处理

我们公司拥有数千个Excel文件,每个Excel文件描述一个IPVPNnetworking。 这个Excel文件遵循单一的格式,它保存联系信息,网站的细节,路由器规格,主要/备份链接的具体细节,VRF等数据。

格式会不时变化,我们不得不专门用几个人手动将数据从一种格式传输到另一种格式。

我希望得到如何自动化这个过程的build议。 Jargons不怕。 更好的是,如果你能提供一步一步的高层次的方法来解决这个问题。

另外还有一个具体的问题:

如果Excel工作表具有混合的数据,可以使用XML Mapping工作吗? 工作表不包含一个很好的表,但几乎没有rowspans和colspans在这里和那里。

谢谢。

使用PowerShell。 我不是附近安装了PowerShell的盒子(它带有Win7,必须安装它的XP,Vista,服务器….),但它会是这样的东西(从我发现的第一个MSDN博客被盗:
http://blogs.technet.com/heyscriptingguy/archive/2009/01/13/how-do-i-run-an-office-excel-macro-on-multiple-workbooks.aspx

$excel = new-object -comobject excel.application $excelFiles = Get-ChildItem -Path C:\fso -Include *.xls, *.xlsm -Recurse Foreach($file in $excelFiles) { $workbook = $excel.workbooks.open($file.fullname) $worksheet = $workbook.worksheets.item(1) $excel.Run("CreateChart") $workbook.save() $workbook.close() } $excel.quit() 

您没有提及格式更改的方式,但使用VBA更新从各种目录(FileSystemObject将获取文件)获取的工作簿的连续并不困难。 如果是操纵列的问题,ADO可能是最好的select。

这里是微软所说的关于使用COM在服务器上自动运行Excel(参见本文 ):

Microsoft目前不推荐并不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)中自动化Microsoft Office应用程序,因为Office可能performance出不稳定的行为, /或Office在此环境中运行时出现死锁。

SpreadsheetGear for .NET有一个类似于Excel的API。 你可以在这里看到一些活的ASP.NET示例,并在这里下载免费试用版。

免责声明:我自己的SpreadsheetGear LLC