Visual Basic - comparar datos en 2 listboxes y eliminar duplicado

Life is soft - evento anual de software empresarial
 
Vista:

comparar datos en 2 listboxes y eliminar duplicado

Publicado por Roberto Gallegos (2 intervenciones) el 04/05/2009 08:37:42
Hola, necesito ayuda profesional, estamos desarrollando un proyecto en una clase, estamos con visual basic, necesito hacer un metodo que busque si el item seleccionado de la primera lista es igual a cualquiera de la otra lista, si lo es que diga registro duplicado, si no que lo agrege, he intentado muchas cosas no funcionan, aqui pongo el codigo que estoy usando.

Private Sub checar3()

Dim Existe As Boolean
Dim orden As OleDbCommand
Dim Lector As OleDbDataReader

Try
Dim comando As New OleDbCommand()
Dim conect As New OleDbConnection()

conect.ConnectionString = connString & Apppath & "Polite.mdb"
conect.Open()
comando.CommandType = System.Data.CommandType.Text
comando.CommandText = "SELECT Matricula FROM Registro WHERE NumeroGrupo='" & ComboBox3.SelectedItem & "'"
orden = New OleDbCommand(comando.CommandText, conect)
Lector = orden.ExecuteReader()

While Lector.Read

Existe = False

For i As Integer = 0 To Lector.GetOrdinal("Matricula")

If ListBox1.SelectedItem = Lector.Item(i) Then

MsgBox("El Alumno Ya Existe")
Exit For
End If

If ListBox1.SelectedItem <> Lector.Item(i) Then
For h As Integer = 0 To ListBox1.SelectedItems.Count - 1
ListBox2.Items.Add(ListBox1.SelectedItems(h))
Next

For j As Integer = ListBox1.SelectedItems.Count - 1 To 0 Step -1
ListBox1.Items.Remove(ListBox1.SelectedItems(j))
Next
Exit For

End If

Next

End While
conect.Close()

Catch err As System.Exception
MsgBox(err.Message())

End Try

End Sub

cualquier metodo mas simple que ya se sepan me ayudaria mucho, o la manera correcta de hacerlo si me pueden decir cual es se los agradeceria bastante. gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:comparar datos en 2 listboxes y eliminar duplic

Publicado por Roberto Gallegos (2 intervenciones) el 05/05/2009 01:43:21
ya encontre la solucion, aqui se las dejo para el que la necesite.

Private Sub checar()

Dim lista1 As String = ""
Dim lista2 As String = ""

For j As Integer = 0 To ListBox2.Items.Count - 1
ListBox2.SetSelected(j, True)

lista1 = ListBox1.SelectedItem.ToString

lista2 = ListBox2.SelectedItem.ToString

If lista1 <> lista2 Then

If j >= ListBox2.Items.Count - 1 Then
For i As Integer = 0 To ListBox1.SelectedItems.Count - 1
ListBox2.Items.Add(ListBox1.SelectedItems(i))
Next

For i As Integer = ListBox1.SelectedItems.Count - 1 To 0 Step -1
ListBox1.Items.Remove(ListBox1.SelectedItems(i))
Next

End If

ListBox2.SetSelected(j + 1, True)

If lista1 = lista2 Then
MsgBox("El Alumno ya Existe")

End If
Else
MsgBox("El Alumno ya Existe")
Exit For

End If



Next

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar