1

我试图找出一个相当复杂的问题的最佳解决方案。我需要能够将数据库中的数据作为网页仪表板发布。我不允许直接查询数据库,除非通过一个名为 Xtraction 的程序。但是,Xtraction 能够将查询的数据导出到 MS Excel。

我想知道任何人都可以告诉我 Excel 的 C API 是否允许我在 Excel 中获取数据并使用 Excel 的本机图表功能来生成我需要在网页上发布的丰富图表。现在,我知道探索这一点的唯一方法是获得 MS Visual Studio 2010,如果它不能为我做到这一点,我不想花钱。

任何建议表示赞赏。

问候。

4

2 回答 2

1

C api 将只允许您编写 UDF。出于您的目的 - 图表等 - 您将需要使用自动化。

在您过分购买 VS 2010 之前,您可以探索几个选项 - 1. 获取 VS 2010 Express - 这是免费版本。然后使用 C++/COM 或 C#/Excel Interop 进行编码。2. 使用 Excel VBA - 它内置于 excel 本身。只需按 Alt-F11。它将打开 VBA 开发环境。然后,您可以开始创建 VBA 加载项 (.xlam) 并在那里编写创建图形的 VBA 代码。

无论您如何创建图表,将它们导出到文件系统都非常简单

ActiveChart.Export Filename:=<file name>, FilterName:="GIF" 

注:以上为VBA代码。

编辑:如果您决定使用 excel vba 路线 - 您应该考虑查看宏记录器。它为您在 UI 上执行的操作生成代码 - 它极大地提高了生产力,并且可以立即启动并运行您的初始代码。

于 2012-06-05T19:15:42.563 回答
0

我不太明白您的代码是否将成为由多个用户同时访问的 Web 应用程序的一部分,或者它是否是一种提取和交付在网站上发布的数据的批处理作业。

无论如何,多个用户同时使用 Excel 是行不通的。它开始表现得奇怪且不可靠。这记录在 MSDN 上的某处。

作为从数据库中提取数据并将其转换为图表的批处理作业,Excel 应该可以工作。基本上,如果您可以使用 Excel 手动完成,也可以自动完成。

使用“C API”,您是指Excel的COM /自动化接口吗?如果是,我建议使用 C++ 以及所有 Visual Studio 工具和 Microsoft C++ 扩展,因为它们让您的生活变得更加轻松。

于 2012-06-04T17:58:38.587 回答