本帖最后由 cccmou 于 2009-11-22 14:22:13 编辑

解决方案 »

  1.   

    定义一个数组,将textbox数据逐个写入数组,写前判断数组中是否有此数据,有则返回错误,跳出写循环操作。完成后清空数组内容
      

  2.   

    你的所有TextBox应该定义为控件数组:
    Function isRep(N As Long)As Boolean 'TextBox控件数组的下标从0至N
    For i=0 To N-1
        For j=i+1 to N
            If Txt(i).Text=Txt(j) Then 
               isRep=True:Exit Function
            End If 
        Next
    Next
    isRep=False
    End Function
      

  3.   

    set dic=createobject("scripting.dictionary")
    dic.add(text1.text,"1")
    if(dic.exist(text2.text)) then
    debug.print "有重复数据"
    end if
      

  4.   

    把TextBox设为控件数组。再比较就容易了。
      

  5.   

    在Change事件中比较每一个文本框的内容即可
      

  6.   


    Private Sub Command1_Click()
        For i = 1 To 3 '3是文本框总数N,文本框名中的数字顺序增长,例如text1,text2,text3,...
            For j = i + 1 To 3
                If Me.Controls("text" & i).Text = Me.Controls("text" & j).Text Then
                   MsgBox "Text" & i & "与" & "Text" & j & "的值相同"
                End If
            Next
        Next
    End Sub
      

  7.   


    Private Sub Command1_Click()
        'textbox控件名可以随意
        Dim obj1 As Object, obj2() As Object, i As Integer
        Dim j As Integer, k As Integer
        
        For Each obj1 In Controls
            If TypeOf obj1 Is TextBox Then
               ReDim Preserve obj2(i)
               Set obj2(i) = obj1
               i = i + 1
            End If
        Next
        
        For j = 0 To i - 1
            For k = j + 1 To i - 1
                If obj2(j) = obj2(k) Then
                   MsgBox obj2(j).Name & "与" & obj2(k).Name & "的值相同"
                End If
            Next
        NextEnd Sub