【问题标题】:Find similar rows in specified columns in two excel files with C#使用C#在两个excel文件的指定列中查找相似的行
【发布时间】:2018-04-07 13:52:56
【问题描述】:

我有两个 excel 文件,其中的数据如下:

文件 1 名为:FirstFile

Code        | Name    | Family
38395334    | John    | Doe
34982323    | Alex    | Carter
94384239    | Sara    | Sancla

文件 2 名为:SecondFile

Code        | Name    | Department
38395334    | John    | Doe
113231223   | Mike    | Linoff
            | Alex    | Carter
            | Jimmy  | Carter

我想像这样搜索这些文件, 算法首先检查 Code 列,类似的行将颜色变为绿色。 然后那些没有代码或找不到的将通过 Family 和 Name 列进行搜索,如果它们相同,则两个文件中的这些行将其颜色变为绿色。

最后,我们没有找到的所有行都将是红色的。

所以第一个文件中的第 1,2 行将是绿色,第 3 行将是红色。 第二个文件中的第 1,3 行将是绿色,第 2,4 行将是红色。

【问题讨论】:

    标签: c# excel search


    【解决方案1】:

    我希望我可以为一个文件编写解决方案。 在外循环中,您可以使用 do-until 循环并遍历所有行。 在这里面,你首先设置一个布尔值来表示重复。 然后你需要三个直到外循环内的循环 您可以在其中检查代码、名称和部门列。如果布尔值为真。

    所以首先你检查一个循环,如果你能找到相同的代码,如果是这种情况,将行设置为绿色,布尔值设置为 true,这将导致你退出内部行并检查下一行。

    如果您找不到相同的代码,您将通过 do until 语句退出,并进入名称行检查是否可以找到相同的名称,如果是这种情况(见上文)如果没有检查部门.

    当您遍历所有内部循环(代码、名称、部门)时,布尔值将为 false,如果是这种情况,您将颜色设置为红色。

    您可以在此处选择是在内部循环中还是在外部结果中更改重复。

    只需检查一下,不要将“x”行与“x”行进行比较,否则所有行都将是绿色的。

    【讨论】:

      猜你喜欢
      • 2021-01-10
      • 2018-07-13
      • 2017-07-28
      • 2018-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 2013-06-08
      相关资源
      最近更新 更多