Excel文件,C和苦难

好的,所以,我没有编程任何有用的东西 – 上一次我做了一年前,你可以想象我的编程知识严重生锈。 (我编程的最后一件事是在周末进行的ren'py游戏,可以想象这种有限的用法,我写的最先进的C程序是一年前的井字游戏,所以是)。

无论如何,我已经得到了一份工作,编写一个程序,需要两个Excel文件,这两个文件都有一个项目列表,每个项目都与一个ID相关联。 我需要编写一个程序来search两个文件的ID,如果ID匹配,程序将需要创build一个新的文件与匹配的ID和项目。 这疯狂地超出了我有限的C能力。

如果有人能帮助,我会认真的感谢。

(另外,如果C不可能,我将尽我所能与其他语言合作)

将这两个文件导出为.csv格式并编写一个脚本来处理这两个文件。 例如,在PHP中,您已经构build了csv读/写function。

您可以使用VBA执行此操作, 并在文件1中对列中单元格进行迭代的文件之一中创build一个macros ,并将它们与文件2中的单元格进行比较,并将它们写入新的.xls文件(如果匹配)。

Dana指出VLOOKUP函数很容易做到这一点。

  1. 安装GnuWin32
  2. 以文本forms输出excel文件(例如csv)
  3. 使用-u选项sort每个文件进行sort ,以根据需要删除重复项
  4. 混合和sort 2个文件
  5. uniq -c统计唯一的ID
  6. grep过滤掉数值为1的行
  7. 删除计数离开的ID和其他任何你需要cut

如果您了解Java,那么您可以为您的项目使用Apache POI。 您可以使用Apache POI网站上提供的示例来完成您的任务。

Apache POI Excel文档: http : //poi.apache.org/spreadsheet/quick-guide.html

如果您必须在进程的xls / xlsx文件上执行此操作,则可能需要由COM自动化控制的Excel副本。 你可以在BV / VBA / C#/ C ++中做到这一点,比其他的更容易。 Google用于“Excel自动化”。

Rgds,Martin

不是C,但是你可以用xlsperl快速地拼凑一些东西。

过去我已经派上用场了。