如何在Excel中找到重复的单元格集?

时间:2014-09-03 06:00:52

标签: algorithm pattern-recognition

我有2100行和6列表

整个表格中只有12个可能的值,例如A,B,C,D,E,F,G,H,I,J,K,L 第12个值L只是一个空白填充物。它表示空白单元格。

由于表格中只有11个可能的值,因此会观察到模式。

首先出现一个模式,然后在表格的某处重复。 可以有任意数量的模式,但我有一个特定的模式格式,可以通过这种方式找到并报告。

欢迎 EXCEL-VBA,PHP-MYSQL或C 中的解决方案。

我附上了一个Iam寻找的例子。建议最受欢迎 问题。

信息&格式:http://ge.tt/8QkQJet1/v/0 [DOCX文件234 KB]

Excel表格中的示例:http://ge.tt/69htuNt1/v/0 [XLSX文件16 KB]

请评论更多信息或具体要求。

1 个答案:

答案 0 :(得分:0)

请尝试下面的代码,将范围更改为您需要的范围,将工作表编号更改为正确的工作表编号(我不会将您的全部范围放入其中,因为如果您有1000个模式查找,您必须在消息框上单击“确定”1000次,只需使用部分范围进行测试)

这将扫描范围,并在10行范围内找到 2 的任何模式,如果您需要它来查找更大的模式,您需要再次使用额外的{添加相同的代码{1}}语句检查下一个偏移量。

如果存在相同的模式并且存在相同的列结构,这只会找到它,但它是你的开始

在测试中正常工作

IF

<强> *** *** UPDATE

我已经更新了我的代码,以下现在可以在下一行中找到模式:

Sub test10()

Dim rCell As Range
Dim rRng As Range

Set rRng = Sheets("Sheet1").Range("A1:I60") '-1 on column due to offset

'Scan through all cells in range and find pattern
For Each rCell In rRng.Cells
If rCell.Value = "" Then GoTo skip
         For i = 1 To 10
            If rCell.Value = rCell.Offset(i, 0).Value Then
                If rCell.Offset(0, 1).Value = rCell.Offset(i, 1) Then
                    MsgBox "Match Found at: " & rCell.Address & ":" & rCell.Offset(0, 1).Address & " and " & rCell.Offset(i, 0).Address & ":" & rCell.Offset(i, 1).Address
               End If
            End If
        Next i
skip:
Next rCell


End Sub