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.
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


0