判断是否有相同值

LUOLZD001 2009-08-11 04:40:39
有8个TEXT.BOX,都不为空(有字符串值),如何判断这8个值互不重复?
...全文
104 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
slowgrace 2009-08-11
  • 打赏
  • 举报
回复
6楼假设“-”是几个Text中都不会出现的字符,你可替换成符合实际情况的不可能出现字符。
slowgrace 2009-08-11
  • 打赏
  • 举报
回复
5楼的办法好,我来写个变体。

Dim strAll As String
Dim i As Long

For i = 0 To 7
strAll = strAll & Text(i) & "-"
Next i

If InStr(strAll, "--") Then
MsgBox "有重复。"
End If

TechnoFantasy 2009-08-11
  • 打赏
  • 举报
回复
写个伪代码,首先定义一个没有包含在这8个文本里面的分割字符,假设是&:
Dim sAll = "&"

For i=0 to 7
If(InStr(sAll, ("&" + text(i).text + "&"))
'有重复值
Else
sAll = sAll + text(i).Text + "&"
End If
Next For
SYSSZ 2009-08-11
  • 打赏
  • 举报
回复
Private Sub Form_Load()
Dim a As Object
Dim arr(7) As String
For Each a In Me.Controls
If TypeOf a Is TextBox Then
arr(i) = a.Text
i = i + 1
Debug.Print a.Name
End If
Next
For i = 0 To 6
For j = i + 1 To 7
If arr(i) = arr(j) Then
MsgBox "第" & 8 - j & "个文本框内容" & "和" & 8 - i & "个相同"
End If
Next j
Next i
End Sub
SYSSZ 2009-08-11
  • 打赏
  • 举报
回复
不用控件数组也可以.
LUOLZD001 2009-08-11
  • 打赏
  • 举报
回复
谢谢
jhone99 2009-08-11
  • 打赏
  • 举报
回复
用控件数组

for i=0 to 7
for j=i+1 to 7
if text(i)=text(j) then
msgbox i & "和" & j & "相同"
end if
next j
next i

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧