VB 数组中的所有数据中,我怎样取出相同的记录
我现在有个数组A,A中的记录值为:10,20,30,35,40,45,50,55,60,65,70,11,20,25,30,35,40,45,50,55,60,70,77...
我现在有个数组A,A中的记录值为:10,20,30,35,40,45,50,55,60,65,70,11,20,25,30,35,40,45,50,55,60,70,77,12,35,40,45,50,75
这个数组中,我想把所有的就是相同的记录取出来,得到的结果应该是:
35,40,45,50
谁能帮我看看,怎样做才能实现我的要求?最好有代码。 展开
这个数组中,我想把所有的就是相同的记录取出来,得到的结果应该是:
35,40,45,50
谁能帮我看看,怎样做才能实现我的要求?最好有代码。 展开
展开全部
你给的测试数据结果如下
20 30 35 40 45 50 55 60 70
代码
Private Sub Form_Load()
'初始化数组
Dim A
A = Array(10, 20, 30, 35, 40, 45, 50, 55, 60, 65, 70, 11, 20, 25, 30, 35, 40, 45, 50, 55, 60, 70, 77, 12, 35, 40, 45, 50, 75)
Dim i As Integer, j As Integer
'记录出现次数
Dim iCount As Integer
'输出临时变量
Dim strOut As String
'从第一个数开始
For i = 0 To UBound(A)
'计数清零
iCount = 0
'取后面的数字,看看是否一样
For j = i To UBound(A)
'发现一样的,计数加一
If A(i) = A(j) Then
iCount = iCount + 1
End If
Next
'如果出现次数大于1次,并且没有在输出结果中,就添加到输出结果
If iCount > 1 And InStr(1, strOut, " " & A(i) & " ", vbTextCompare) < 1 Then
strOut = strOut & " " & A(i) & " "
End If
Next
' 显示结果
MsgBox strOut
End Sub
20 30 35 40 45 50 55 60 70
代码
Private Sub Form_Load()
'初始化数组
Dim A
A = Array(10, 20, 30, 35, 40, 45, 50, 55, 60, 65, 70, 11, 20, 25, 30, 35, 40, 45, 50, 55, 60, 70, 77, 12, 35, 40, 45, 50, 75)
Dim i As Integer, j As Integer
'记录出现次数
Dim iCount As Integer
'输出临时变量
Dim strOut As String
'从第一个数开始
For i = 0 To UBound(A)
'计数清零
iCount = 0
'取后面的数字,看看是否一样
For j = i To UBound(A)
'发现一样的,计数加一
If A(i) = A(j) Then
iCount = iCount + 1
End If
Next
'如果出现次数大于1次,并且没有在输出结果中,就添加到输出结果
If iCount > 1 And InStr(1, strOut, " " & A(i) & " ", vbTextCompare) < 1 Then
strOut = strOut & " " & A(i) & " "
End If
Next
' 显示结果
MsgBox strOut
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询