Buenas tardes
Trabajo con un formulario y entre mis herramientas tengo un textbox que lo utilizo para registrar datos a la columna C de mi hoja de excel, pero para no estar repitiendo la escritura, como seria que al estar introduciendo los datos al textbox se vaya auto completando, con los datos de la columna C que anteriormente ya fueron introducidos, por ejemplo como se hace en google.
En este textbox ya tengo los siguientes códigos:
Private Sub TextBox9_Enter()
TextBox9.BackColor = vbYellow
End Sub
Private Sub TextBox9_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox9.BackColor = vbWhite
End Sub
Private Sub TextBox9_change()
'Solo mayuscula
Dim i As Integer
TextBox9.Text = UCase(TextBox9.Text)
i = Len(TextBox9.Text)
TextBox9.SelStart = i
End Sub
Saludos cordiales
Jesús
Podrías hacer algo parecido con un cuadro desplegable o una lista, combobox o ListBox. cada vez que tecleas una letra se produce el evento Change del combobox. En ese evento deberías redefinir el origen del combo a una lista de valores que comience por lo que ya llevas escrito.
Para obtener esa lista de valores únicos que coincida con lo que vas escribiendo, podrías utilizar un filtro avanzado que copiase los valores desde lo que ya tengas escrito en tu columna C
Puedes tener un problema de tiempo de carga según el número de registros que quieras utilizar, porque seguro que tu máquina es algo menos potente que la de Google ;)
Adjunto ejemplo
------
Ya sé Excel, pero necesito más.
Algo Tarde, pero quita el boton Drop del combo, se vera como un text y hara el autocompletado.