estou ,usando ou tentando usar o codigo do mestre Jpaulo para auto completar texto mas não esta dando certo veja
Private Sub produto_KeyUp(KeyCode As Integer, Shift As Integer)
'By JPaulo@Outubro 2009
If KeyCode = vbKeyBack Then Exit Sub
PopularMinhaArray myArray, Lista69
AutoCompletaValor myArray, Me.produto
End Sub
Public Sub PopularMinhaArray(ByRef strArray() As String, ByRef lstBox As ListBox)
'By JPaulo@Outubro 2009
LimparMinhaArray strArray
lstBox.Requery
For i = 1 To lstBox.ListCount - 1
strArray(i) = lstBox.ItemData(i)
Next i
MinhaArrayNumeroUsado = lstBox.ListCount - 1
End Sub
Public Sub LimparMinhaArray(ByRef strArray() As String)
'By JPaulo@Outubro 2009
min = LBound(strArray)
max = UBound(strArray)
For x = min To max
strArray(x) = ""
Next
End Sub
Public Sub AutoCompletaValor(ByRef strArray() As String, ByRef MinhaCaixaTexto As TextBox)
'By JPaulo@Outubro 2009
Dim strText As String
Dim strLength As Integer
Dim x As Integer
Dim min As Integer
Dim max As Integer
strText = LCase$(MinhaCaixaTexto.Text)
strLength = Len(strText)
If strLength = 0 Then Exit Sub
min = LBound(strArray)
max = UBound(strArray)
For x = min To max
If x > MinhaArrayNumeroUsado Then
Exit Sub
ElseIf strArray(x) = "" Then
ElseIf strText = LCase$(Left$(strArray(x), strLength)) Then
If Len(strArray(x)) > strLength Then
MinhaCaixaTexto.Text = MinhaCaixaTexto.Text + Mid$(strArray(x), strLength + 1)
MinhaCaixaTexto.SelStart = strLength
MinhaCaixaTexto.SelLength = Len(strArray(x)) - strLength
End If
Exit Sub
End If
Next
End Sub
Private Sub produto_KeyUp(KeyCode As Integer, Shift As Integer)
'By JPaulo@Outubro 2009
If KeyCode = vbKeyBack Then Exit Sub
PopularMinhaArray myArray, Lista69
AutoCompletaValor myArray, Me.produto
End Sub
Public Sub PopularMinhaArray(ByRef strArray() As String, ByRef lstBox As ListBox)
'By JPaulo@Outubro 2009
LimparMinhaArray strArray
lstBox.Requery
For i = 1 To lstBox.ListCount - 1
strArray(i) = lstBox.ItemData(i)
Next i
MinhaArrayNumeroUsado = lstBox.ListCount - 1
End Sub
Public Sub LimparMinhaArray(ByRef strArray() As String)
'By JPaulo@Outubro 2009
min = LBound(strArray)
max = UBound(strArray)
For x = min To max
strArray(x) = ""
Next
End Sub
Public Sub AutoCompletaValor(ByRef strArray() As String, ByRef MinhaCaixaTexto As TextBox)
'By JPaulo@Outubro 2009
Dim strText As String
Dim strLength As Integer
Dim x As Integer
Dim min As Integer
Dim max As Integer
strText = LCase$(MinhaCaixaTexto.Text)
strLength = Len(strText)
If strLength = 0 Then Exit Sub
min = LBound(strArray)
max = UBound(strArray)
For x = min To max
If x > MinhaArrayNumeroUsado Then
Exit Sub
ElseIf strArray(x) = "" Then
ElseIf strText = LCase$(Left$(strArray(x), strLength)) Then
If Len(strArray(x)) > strLength Then
MinhaCaixaTexto.Text = MinhaCaixaTexto.Text + Mid$(strArray(x), strLength + 1)
MinhaCaixaTexto.SelStart = strLength
MinhaCaixaTexto.SelLength = Len(strArray(x)) - strLength
End If
Exit Sub
End If
Next
End Sub