转换Excel文件的工具? (交换列,基本的string操作等)

我需要将表格数据导入到我的数据库中。 数据通过电子表格(主要是Excel文件)从多方提供。 这些文件中的每一个的格式都是相似的,但是并不相同,并且需要进行各种转换来将数据转换为适合导入的最终格式。 此外,input格式将来可能会改变。 我正在寻找一种可以由普通用户运行和pipe理的工具来转换input文件。

现在让我列出一些我正在做的转换:

  • 交换列:

input是:

|Name|Category|Price| |data|data |data | 

输出是

 |Name|Price|Category| |data|data |data | 
  • 重命名列

input是:

 |PRODUCTNAME|CAT |PRICE| |data |data|data | 

输出是

 |Name|Category|Price| |data|data |data | 
  • 根据查找表映射列,就像上面的例子中一样:在列中将“car”replace为“car”
  • 基本math:将价格栏乘以某个因子
  • 基本的string操作可以说,价格列的格式是“3 x $ 45”,我想分成两列的数量和价格
  • 按值过滤行:排除包含单词“expensive”的所有行
  • 等等

我有以下要求:

  • 它可以在以下任何平台上运行:Windows,Mac,Linux
  • 开源,免费软件,共享软件或商业
  • 转换需要通过GUI进行编辑
  • 如果该工具需要最终用户培训才能使用,那不是问题
  • 它可以处理1000-50000行的顺序

基本上我正在寻找一个graphics工具来帮助用户对数据进行标准化处理,这样就可以导入数据了,而不需要编写一堆适配器。

你用什么工具来解决这个问题?

Mule Data Integrator将从csv文件中完成所有这些工作。 因此,您可以将电子表格导出为CSV文件,并将CSV文件加载到MDI中。 它甚至可以直接将数据加载到数据库。 用户可以指定您请求的所有转换。 MDI可以在非Mule环境下正常工作。 你可以在这里findmulesoft.com (免责声明,我公司开发了这个产品基于的转换技术)。

最简单的解决scheme恕我直言将是使用Excel本身 – 你会得到所有的Excel内置函数和macros免费。

将电子表格中的变换代码放在一个通过Excel控件调用的macros中(对于GUI方面)。 find一种方法将电子表格和macros插入到客户端的Excel文件中。 这样你就不必担心平台的兼容性(这是他们的文件,所以他们必须能够打开它)和其他所有。 其他要求也得到满足。 唯一的训练是向他们展示如何启用macros。

你没有说你要导入哪个数据库,或者你使用了什么工具。 如果您使用的是SQL Server,那么我build议在导入过程中使用SQL Server Integration Services(SSIS)来操作电子表格。

我倾向于使用MS Access作为多个数据源和目的地之间的pipe道 – 但是您正在寻找一些更加自动化的东西。 你可以使用Access的macros和VB脚本通过很多的基础知识。

但是,用户总是会遇到数据一致性问题,导致用户错误地解释如何规范化他们的信息。 祝你好运!