ROTINA ADDALL DO LISTBOX1 PARA LISTBOX2
Olá a todos.
Alguém, porfavor, poderia me ajudar com uma rotina onde seleciono + de 1 item de um listbox e através do botão transfero os mesmos para o listbox2, porém apagando-os do listbox1??? Utilizando FOR consigo somente adicionar, se removê-lo da o erro Invalid Property Index.
Não consigo encontrar uma alternativa, alguém teria uma sugestão a me dar???
Tks.
Alguém, porfavor, poderia me ajudar com uma rotina onde seleciono + de 1 item de um listbox e através do botão transfero os mesmos para o listbox2, porém apagando-os do listbox1??? Utilizando FOR consigo somente adicionar, se removê-lo da o erro Invalid Property Index.
Não consigo encontrar uma alternativa, alguém teria uma sugestão a me dar???
Tks.
Esta rotina só precisa de uma alteração:
De:
================================================================
Private Sub cmd_add_all_Click()
Dim X As Integer
Dim var(100000)
'Adiciona o Procedimento Existente em Co-Participação
If lst_Existentes = "" Then
MsgBox "Efetue a pesquisa que retornará os Procedimentos!", vbInformation, "Importante"
Else
If lst_Existentes.SelCount = 0 Then
MsgBox "é preciso clicar sobre o Procedimento para adicioná-lo!", vbInformation, "Importante"
Else
For X = 0 To lst_Existentes.ListCount - 1
If lst_Existentes.Selected(X) = True Then
lst_Adicionados.AddItem (lst_Existentes.List(X))
lst_Existentes.RemoveItem (lst_Existentes.ListIndex)
End If
Next
End If
End If
End Sub
Para:
================================================================
Private Sub cmd_add_all_Click()
Dim X As Integer
Dim var(100000)
'Adiciona o Procedimento Existente em Co-Participação
If lst_Existentes = "" Then
MsgBox "Efetue a pesquisa que retornará os Procedimentos!", vbInformation, "Importante"
Else
If lst_Existentes.SelCount = 0 Then
MsgBox "é preciso clicar sobre o Procedimento para adicioná-lo!", vbInformation, "Importante"
Else
For X = (lst_Existentes.ListCount -1) to 0 step -1
If lst_Existentes.Selected(X) = True Then
lst_Adicionados.AddItem (lst_Existentes.List(X))
lst_Existentes.RemoveItem (lst_Existentes.ListIndex)
End If
Next
End If
End If
End Sub
Se usar o For...Next invertido, não tem problema...
De:
================================================================
Private Sub cmd_add_all_Click()
Dim X As Integer
Dim var(100000)
'Adiciona o Procedimento Existente em Co-Participação
If lst_Existentes = "" Then
MsgBox "Efetue a pesquisa que retornará os Procedimentos!", vbInformation, "Importante"
Else
If lst_Existentes.SelCount = 0 Then
MsgBox "é preciso clicar sobre o Procedimento para adicioná-lo!", vbInformation, "Importante"
Else
For X = 0 To lst_Existentes.ListCount - 1
If lst_Existentes.Selected(X) = True Then
lst_Adicionados.AddItem (lst_Existentes.List(X))
lst_Existentes.RemoveItem (lst_Existentes.ListIndex)
End If
Next
End If
End If
End Sub
Para:
================================================================
Private Sub cmd_add_all_Click()
Dim X As Integer
Dim var(100000)
'Adiciona o Procedimento Existente em Co-Participação
If lst_Existentes = "" Then
MsgBox "Efetue a pesquisa que retornará os Procedimentos!", vbInformation, "Importante"
Else
If lst_Existentes.SelCount = 0 Then
MsgBox "é preciso clicar sobre o Procedimento para adicioná-lo!", vbInformation, "Importante"
Else
For X = (lst_Existentes.ListCount -1) to 0 step -1
If lst_Existentes.Selected(X) = True Then
lst_Adicionados.AddItem (lst_Existentes.List(X))
lst_Existentes.RemoveItem (lst_Existentes.ListIndex)
End If
Next
End If
End If
End Sub
Se usar o For...Next invertido, não tem problema...
Tópico encerrado , respostas não são mais permitidas