vba:比较两个字符串(两个单元格),每个字符串都包含用逗号分隔的被枚举的项目

时间:2018-10-01 14:16:55

标签: arrays string excel-vba compare string-comparison

我确实将sql-extract导入excel。导入后,excel中有五列,column2包含一个字符串(枚举项,以逗号分隔)。示例:

Column0 | Column1 | Column2      | Column3 | Column4          | Column5
Name    | Group   | ItemsPlanned | Item    | AllGroupItemsRun | Status
Base1   | ABC1    | 1,2,3        | 1       | 1,2              | OK
Base1   | ABC1    | 1,2,3        | 2       | 1,2              | NOK
Base0   | DEF0    | -            | -       | -                | UNKNOWN
Base4   | GHI3    | 9            | 9       | 9                | OK
Base8   | LMN5    | 4            | 8       | 8                | OK
Base2   | XYZ7    | 4,6          | 4       | 4,5              | NOK
Base2   | XYZ7    | 4,6          | 5       | 4,5              | OK

我需要找出:

缺少哪些项目?-> Column6

还可以找到哪些项目?-> Column8

两个单元格(第6列和第8列)均指出相同的问题: 如何比较两个均包含用逗号分隔的枚举项目的单元格?

这是Cell6和Cell8的示例(输出):

Column0 | Column1 | Column2      | Column3 | Column4          | Column5       | Column6     | Column7      | Column8         | Column9
Name    | Group   | ItemsPlanned | Item    | AllGroupItemsRun | ItemStatus    | MissingItem | Coverage [%] | AdditionalItems | AdditionalCoverage [%]
Base1   | ABC1    | 1,2,3        | 1       | 1,2              | OK            | 3           | 67%          |                 | 0%
Base1   | ABC1    | 1,2,3        | 2       | 1,2              | NOK           | 3           | 67%          |                 | 0%
Base0   | DEF0    | -            | -       | -                | UNKNOWN       | -           | 100%         | -               | -
Base4   | GHI3    | 9            | 9       | 9                | OK            |             | 100%         |                 | 0%
Base8   | LMN5    | 4            | 8       | 8                | OK            | 4           | 0%           | 8               | 100%
Base2   | XYZ7    | 4,5          | 4       | 4,5              | NOK           | 5           | 50%          | 6               | 50%
Base2   | XYZ7    | 4,5          | 6       | 4,5              | OK            | 5           | 50%          | 6               | 50%

目前,我确实有几个函数,每个周期每2000行需要大约1/2小时,...导致了我的问题:那太长了

我不附加我自己的解决方案,因为它太长了,但是只要您需要,我都可以为Column4,Column6-Column9提供我的代码。

我没有发现这里已经讨论过的类似内容。

在此先非常感谢您的支持和投入。

干杯!

0 个答案:

没有答案