SELECIONAR DETERMINADO ITEM NO LISTBOX

ADILSOO 28/02/2017 18:29:56
#472007
Boa noite pessoal!
Estou tentando varrer um listbox, a partir de um grid que eu tenho, verificando se o item esta no grid e se estiver e saio procurando no listbx para marcar, porém não estou conseguindo capturar o valor em questão.
Não tenho muita experiencia com listbox, alguém poderia me ajudar?
o código que estou usando é esse...

  [ô]Verifica se já existe a quadra adicionada
Dim NomeQuadra As String
x = 0
With gridquadras
For x = 1 To .Rows - 1

NomeQuadra = .TextMatrix(x, 2)

[ô]If NomeQuadra = .TextMatrix(x, 2) Then
Dim itens As Integer
For itens = 0 To List1.ListCount - 1
If NomeQuadra = List1.ItemData(itens) Then
List1.Selected(itens) = True
Else
List1.Selected(itens) = False
End If
Next itens
[ô]End If
Next x
End With
TUNUSAT 01/03/2017 17:23:58
#472024
ADILSOO,

Está certo ou fiz ao contrário?


Option Explicit
Dim arrQuadras(9) As String

Private Sub Form_Load()
Dim i As Byte

[ô]Adicionar itens na lista de Quadras
lsbQuadra.AddItem ([Ô]Q1[Ô])
lsbQuadra.AddItem ([Ô]Q8[Ô])
lsbQuadra.AddItem ([Ô]Q9[Ô])

[ô]Montar uma array de itens a serem verificados na [ô]lsbQuadra[ô].
For i = 0 To 8
arrQuadras(i) = [Ô]Q[Ô] & i
Next

End Sub

[ô]Não pode ser no evento [Ô]Click[Ô]
[ô]Private Sub lsbQuadra_Click()

Private Sub cmdBusca_Click()
Dim Item As Variant
Dim blnExiste As Boolean
Dim bytContador As Byte

blnExiste = False

For Each Item In arrQuadras()

For bytContador = 0 To lsbQuadra.ListCount - 1
lsbQuadra.ListIndex = bytContador

If Item = lsbQuadra.Text Then
blnExiste = True
Exit For
End If

Next

If blnExiste Then
lsbQuadra.Selected(lsbQuadra.ListIndex) = True
blnExiste = Not blnExiste
End If

Next

End Sub


[ô]http://www.macoratti.net/dica75.htm
[ô]https://msdn.microsoft.com/pt-br/library/2yc9d57t(v=vs.90).aspx

[][ô]s,
Tunusat.
ADILSOO 01/03/2017 21:56:13
#472031
Amigo, obrigado pela ajuda, mas infelizmente é um pouco diferente.
Deixa eu explicar melhor..

Eu tenho um arquivo gravado, quando busco ele no banco, ele me da as quadras daquela fazenda.
eu adiciono essas quadras em um grid. até aí blz..
eu adiciono todas as quadras existentes na fazenda no listbox, independente de qual eu to usando (Todas que estao no cadastro)
então eu preciso ver quais estão no grid, percorrer o listbox e marcar somente as que estão no grid.
nao sei se consegui explicar melhor agora.

abraço...
MARCELO.TREZE 02/03/2017 08:07:08
#472035
Resposta escolhida
noseu código colega só muda essa linha e teste

de:

If NomeQuadra = List1.ItemData(itens) Then


para:

If NomeQuadra = List1.List(itens) Then
Tópico encerrado , respostas não são mais permitidas