Excel文件、C和痛苦



好吧,我很久没有编程过任何有用的东西了——我上次编程是在一年前,你可以想象,我的编程知识已经严重生疏了。(我"编程"的最后一件事是周末的一个ren'py游戏。可以想象它的有限用途。我写的最高级的C程序是一年前的一个井字游戏。所以是的。)

无论如何,我得到了一份工作,要写一个程序,它包含两个Excel文件,这两个文件都有一个项目列表,每个项目都与一个ID相关联。我需要编写一个程序来搜索两个文件中的ID,如果ID匹配,程序将需要创建一个具有匹配ID和项目的新文件。这超出了我有限的C语言能力。

如果有人能帮忙,我会非常感谢。

(此外,如果C无法做到这一点,我将尽我所能使用任何其他语言)

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

您可以使用VBA执行此操作,并在其中一个文件中创建一个宏,该宏在文件1中列中的单元格上迭代,并将它们与文件2中的单元格进行比较,如果匹配,则将它们写入新的.xls文件。

Dana指出,VLOOKUP功能将很容易做到这一点。

  1. 安装GnuWin32
  2. 将excel文件输出为文本(例如csv)
  3. sort每个文件带有-u选项,以便在需要时删除重复项
  4. 混合并sort这两个文件
  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++中做这件事,有些比其他更容易。谷歌搜索"Excel自动化"。

Rgds,Martin

不是C,但您可以使用xlspell非常快速地拼凑一些东西。

它过去对我很有用。

相关内容

  • 没有找到相关文章

最新更新