Saltar al contenido
View in the app

A better way to browse. Learn more.

Ayuda Excel

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Busqueda desde TextBox añadir ListBox

publicado

Buenos días,

Estoy realizando una aplicación en excel en la cual desde un TextBox escribo el elemento que quiero buscar en la base de datos. Según los caracteres que escribes mira en otra hoja (Base de Datos) toda una columna (10000 elementos) buscando coincidencias exactas. Todo funciona con el código adjunto lo que ocurre es que es lento ya que para cada carácter escrito realiza una búsqueda completa. ¿Tenéis alguna idea para darle mayor velocidad a la búsqueda? Interrumpir la búsqueda para coger el nuevo carácter escrito y comenzar la búsqueda...

Private Sub TextBox_Producto_Change()
Dim Producto As String
Dim StringCoincidir As String
Dim StringEscrito As String
Dim lngResultado As Double

Sheets("Productos").Select
Range("A1").Select
i = 0
ListaBusqueda.Clear
CommandButton_Insertar.Enabled = False
Do
If ActiveCell.Offset(i, 0).Value = vacio Then
Exit Do
Else
Producto = ActiveCell.Offset(i, 0).Text
StringCoincidir = Left(Producto, TextBox_Producto.TextLength)
StringCoincidir = StrConv(StringCoincidir, vbLowerCase)
StringEscrito = StrConv(TextBox_Producto.Text, vbLowerCase)

If (StringCoincidir = StringEscrito) Then
ListaBusqueda.AddItem [Producto]
End If
End If
i = i + 1
Loop
End Sub[/PHP]

Muchas gracias.

Featured Replies

publicado

Adjunta archivo ejemplo.......normas del foro.....para que alguien te pueda ayudar.

De todos modos, ¿has pensado en la posibilidad de iniciar la búsqueda a través de un commandbutton una vez que hayas escrito los caracteres que buscas?.....De esa manera te ahorrarías muchísimo tiempo de proceso.

Un saludo,

Tese

publicado
  • Autor

Buenas,

Sobre el botón para la búsqueda si pudiera evitarlo seria mejor no colocarlo ya que la lista de coincidencias viene bien para guiarte ya que entre 10000 referencias muchas veces necesitas ver las coincidencias.

Adjunto un ejemplo realizado con números pero el que tengo en la oficina son referencias alfanuméricas y el resultado es más lento.

Una solución que en su día barajé fue que mientras esta en el bucle DO y detecta que se ha escrito otro carácter el en TextBox haga un exit del DO y vuelva desde el inicio pero la búsqueda en ese momento con el nuevo carácter añadido. Con esto evito tener que buscar todas las referencias por cada carácter.

Muchas gracias y un saludo

Excel_Ayuda_Lista.rar

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.