我有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]
请评论更多信息或具体要求。
答案 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