EXCEL如何判断一行数字中是否有连续数组,求助各位大神!!!

如下记有多组数值:第1组 2、6、7、10、15、17第2组 2、3、7、11、12、20第3组 5、8、11、17、18、19第4组 1、4、5、6、16、17第5组 3、14、15、16、17、19第6组 2、5、8、11、13、20…… ………… ………… ……第99组 ……第100组 ……描述详细烦请见附件图片!!!问题1:请用一个函数公式下拉填充,判断每一行的每组数字中是否有连续数组,有返回值1,无返回值0。问题2:请用一个函数公式下拉填充,判断每一行的数字中连续数组的类型。问题3:请用一个函数公式下拉填充,将每行的数字集合到一个单元格内,用顿号隔开。如公式不可行或麻烦,可用VBA宏应用也行。

Sub panduan()
arr = [b2:u12]                         '计算范围
For i = 1 To UBound(arr)
For j = 1 To UBound(arr, 2)
If arr(i, j) <> "" Then
str1 = str1 & arr(i, j) & "、"
If j <> 20 Then
If (arr(i, j) + 1) = arr(i, j + 1) Then
k = k + 1
If arr(i, j + 2) = "" Then
str2 = str2 & (k + 1) & "—"
End If
End If
End If
Else
k = 0
End If
Next j
If Len(str2) = 0 Then
Cells(i + 1, "v") = 0                            '输出v列
Else
Cells(i + 1, "v") = 1                            '输出v列
End If
Cells(i + 1, "x") = Left(str1, Len(str1) - 1)    '输出x列
If Len(str2) = 2 Then
str2 = str2 & "0"
ElseIf Len(str2) = 0 Then
str2 = "0—0"
Else
str2 = Left(str2, Len(str2) - 1)
End If
Cells(i + 1, "z") = str2                      '输出z列
str1 = ""
str2 = ""
Next i
End Sub

注:代码里备注了计算范围和输出位置,可以根据需要修改。试试吧

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-12-01
公式都可以实现,图片看不清,重新上传清晰点
第2个回答  2018-12-01
可以用函数看看
第3个回答  2018-12-01
发你的文件来
相似回答