Imagen: simpson33, Getty Images/iStockphoto

Al ingresar datos en Microsoft Excel, una función de autocompletar intenta ayudarlo. Probablemente use mucho esta función: es conveniente, reduce las pulsaciones de teclas para ingresar datos y ayuda a evitar errores tipográficos. Es una característica de conveniencia sobre la marcha. ¿No sería genial si pudieras usar esta función de autocompletar para buscar datos? Bien tu puedes.

Le mostraré cómo combinar este comportamiento en Excel en un cuadro combinado con una función BUSCARV(). El control le permitirá buscar por carácter utilizando su comportamiento de autocompletar, y la función enlazada devolverá un valor coincidente para cada coincidencia.

APRENDE MÁS: Precios y características de Office 365 para consumidores

Estoy usando Office 365 (escritorio) en un sistema Windows 10 de 64 bits. Puede descargar el archivo de demostración .xlsm o trabajar con sus propios datos. Ni la versión del navegador ni las versiones de menú de Excel admitirán esta técnica.

Índice
  • Cómo hacer una búsqueda básica en Excel
  • Cómo agregar un cuadro combinado en Excel
  • Cómo utilizar la función BUSCARV()
  • Cómo usar Quick Clear en Excel
  • Cómo inhibir errores en Excel
  • Cómo usar la búsqueda fácil en Excel
  • Envíame tus preguntas sobre Microsoft Office
  • Cómo hacer una búsqueda básica en Excel

    Queremos ingresar los caracteres uno por uno y ver el primer valor coincidente y un valor correspondiente. La función de autocompletar de Excel funciona con la entrada de datos. No puede usarlo para buscar una columna de valores existente, usa la funcionalidad para ingresar un nuevo valor.

    VER: 17 consejos para proteger las computadoras Windows y Mac del ransomware (PDF gratuito) (República Tecnológica)

    Afortunadamente, el control de cuadro combinado ActiveX de Excel ofrece el mismo comportamiento de autocompletar: cuando escribe caracteres, el control coincide con el primer valor en la lista poblada que coincide con los caracteres escritos. Esta es una solución fácil para la primera mitad de la solución, pero aún queremos saber más sobre el registro correspondiente.

    Por ejemplo, suponga que desea conocer el precio unitario de una categoría específica en el conjunto de datos simple que se muestra en Figura A. Sabe que la categoría comienza con la letra B, pero no puede recordar el nombre exacto de la categoría. (El ejemplo es artificial, pero tenga paciencia conmigo). Usando el cuadro combinado, hacer coincidir las categorías con la letra B es fácil. Para obtener el precio unitario, vincularemos el cuadro combinado a una función BUSCARV(). A medida que ingresa caracteres, la función BUSCARV() devolverá el precio unitario de la categoría que coincide actualmente. Por ejemplo, si ingresa B, el combo primero coincidirá con Productos horneados y mezcla y devolverá el precio unitario de $2.50. Si luego ingresa E (Be), el control devuelve Bebidas y devuelve el precio unitario de $39.

    Figura A

    Vamos a combinar un cuadro combinado y la función BUSCARV().

    Mirando los datos reales, podría esperar B para volver Bebidas porque este valor aparece antes de Productos horneados y mezclas en la columna de categoría. No se preocupe por esta discrepancia ahora, tendrá sentido en un momento. En pocas palabras, la lista del control se ordenará alfabéticamente incluso si los datos no lo están. Ahora, comencemos agregando un cuadro combinado.

    Cómo agregar un cuadro combinado en Excel

    El primer paso es incrustar un cuadro combinado y llenarlo con una lista única de valores de categoría para que podamos aprovechar su comportamiento de autocompletar. Antes de agregar el cuadro combinado, creemos una sola lista de valores de categoría de la siguiente manera:

    1. Seleccione la fuente de datos, C4:C49.

    2. Haga clic en la pestaña Datos, luego en Avanzado en la pestaña Ordenar & Grupo de filtros.

    3. En el cuadro de diálogo resultante, haga clic en la opción Copiar a otra ubicación. El rango de la lista debe ser correcto porque lo seleccionó antes de comenzar.

    4. Ingrese F4 como el parámetro Copiar a.

    5. Marque la opción Solo registros únicos (Figura B) y haga clic en Aceptar.

    Figura B

    Copie una sola lista de valores de categoría.

    Figura C muestra la lista única junto a la fuente de datos original. En una hoja de trabajo, debe poner esta lista en algún lugar apartado, pero para nuestros propósitos es útil para ver lo que está pasando. Antes de continuar, ejecute una ordenación rápida en la lista única de categorías. Si se le solicita, no expanda la selección de clasificación.

    Figura C

    Completaremos un menú desplegable con una lista única de valores de categoría.

    Con una lista alfabética única disponible, insertemos un cuadro combinado sobre el conjunto de datos. (Inserte algunas líneas sobre sus datos si es necesario). Haga clic en la pestaña Desarrollador, luego haga lo siguiente:

    1. En el grupo Controles, haga clic en el menú desplegable Insertar, luego seleccione Cuadro combinado en la sección Controles ActiveX.

    2. Incruste el control en C2 y cambie el tamaño si es necesario.

    3. Con el control seleccionado, haga clic en Propiedades en el grupo Controles.

    4. Introduzca C1 como parámetro LinkedCell y F5:F20 como parámetro ListFillRange (Figura D). En una hoja real, probablemente querrá ocultar la celda vinculada bajo el control, pero quiero que vea los valores cambiar en tiempo real.

    5. Cierre la hoja de propiedades.

    6. Haga clic en la opción Modo de diseño en el grupo Controles para salir del Modo de diseño.

    Figura D

    Vincule el cuadro combinado a la celda C1.

    Si selecciona el control e ingresa B, el comportamiento de autocompletar del control devolverá Productos horneados y mezclas. Si ingresa C, el comando devolverá Candy. Si ingresa Cann, el cheque devolverá Conservas de frutas y verduras, y así sucesivamente. Como puedes ver en Figura E, la celda vinculada, C1, también muestra los resultados coincidentes. Recuerde que la función de autocompletar evalúa una lista alfabética, no los datos reales en la columna Categoría.

    Figura E

    El comportamiento de autocompletar muestra el primer valor coincidente.

    Podemos usar el comportamiento de autocompletar del control para hacer coincidir categorías, pero aún no sabemos el precio unitario de la categoría correspondiente; es el siguiente.

    Cómo utilizar la función BUSCARV()

    Podemos ver que el cuadro combinado está vinculado a la celda C1. Ahora agregaremos una función BUSCARV() que hace referencia a C1, y la función devolverá el precio unitario para el valor de actualización en el cuadro combinado. En D2, ingrese la siguiente función:

    =BUSCARV($C$1,C5:D49,2,FALSO)

    Antes de continuar, echemos un vistazo rápido a BUSCARV(). Esta función utiliza la siguiente sintaxis:

    BUSCARV(valor de búsqueda, matriz de tabla, índice de columna, [rangelookup])

    dónde valor de búsqueda es el valor que buscas; en este caso, es el valor en C1; tablearray es la fuente de datos que contiene lookupvalue y el valor correspondiente que desea devolver, columnindex indica la columna en la que se encuentra el valor devuelto y rangelookup determina si desea el primer valor más cercano o una coincidencia exacta.

    Evaluemos un ejemplo para que todo encaje. Seleccione el cuadro combinado. (Si no se selecciona ningún valor en el cuadro combinado, BUSCARV() devuelve #N/A, no se preocupe todavía). Ingrese C y el combo coincide con Candy incluso si el primer valor C en la columna es Condimentos. Recuerde que la lista de controles está ordenada alfabéticamente. El valor del precio unitario del primer dulce es $62.50 como se muestra en Figura F. Luego ingrese E (Ce) y todo se actualiza para mostrar el primer grano valor indicado en figura g ($19.45).

    Figura F

    La letra C devuelve el primer valor de precio unitario de Candy de $62.50.

    figura g

    Ingrese E y todo se actualiza a la primera categoría Ce coincidente, Cereales.

    Me gusta este ejemplo porque hay tantos valores de categoría con los mismos primeros caracteres.

    Cómo usar Quick Clear en Excel

    Tal como están las cosas, comenzar una nueva búsqueda es molesto porque primero debe borrar la cadena de búsqueda. Eso es demasiado trabajo, así que agreguemos un pequeño fragmento de código para que lo haga por usted.

    Primero, guarde el libro de trabajo como un libro de trabajo habilitado para macros (xlsm). Luego presione Alt+F11 para abrir el Editor de Visual Basic (VBE). Utilice el Explorador de proyectos para seleccionar la hoja adecuada (es decir, Sheet2 (Data) en el libro de demostración). Introduzca el sencillo procedimiento de doble clic en Lista A.

    Lista A

    Sub privado ComboBox1_DblClick (ByVal Cancelar como MSForms.ReturnBoolean)

    'Borrar combinación de búsqueda.

    Me.ComboBox1.Valor = ""

    Título final

    No intente copiar el código directamente desde esta página web: el VBE se quejará de los caracteres web que no puede evaluar. En su lugar, escríbalo usted mismo o copie el código de esta página web primero en Word o Notepad y luego en VBE.

    El código es simple: establecer su propiedad de valor en nada borra el elemento de texto del control, eliminando el valor previamente seleccionado para que pueda comenzar de nuevo rápidamente. Este truco del doble clic no es intuitivo, por lo que si compartes el archivo con otros usuarios, tendrás que decírselo.

    Cómo inhibir errores en Excel

    Actualmente, cuando el cuadro de texto del control está vacío, la función BUSCARV() devuelve un error. Puede inhibir fácilmente esta pantalla utilizando la función IFERROR() de la siguiente manera:

    =SI.ERROR(BUSCARV($C$1,C5:D49,2,FALSO),””)

    Cuando borra el control, los resultados de la función BUSCARV() desaparecen en lugar de mostrar el error.

    Cómo usar la búsqueda fácil en Excel

    Este simple comando y función se combinan para devolver un valor coincidente de un conjunto de datos. La función se actualiza a medida que agrega caracteres. Cuando haya terminado, al hacer doble clic se borrará la cadena de búsqueda.

    Aunque es conveniente, tiene una limitación: se detiene en el primer valor coincidente. No hay forma de buscar otros valores coincidentes en la misma columna.

    Estén atentos, ya que en los próximos meses crearemos controles de búsqueda más complejos.

    Envíame tus preguntas sobre Microsoft Office

    Respondo las preguntas de los lectores cuando puedo, pero no hay garantías. No envíe archivos a menos que se le solicite; las solicitudes de ayuda iniciales que lleguen con archivos adjuntos se eliminarán sin ser leídas. Puede enviar capturas de pantalla de sus datos para ayudar a aclarar su pregunta. Cuando se comunique conmigo, sea lo más específico posible. Por ejemplo, "Por favor, resuelva los problemas de mi libro de trabajo y corrija lo que está mal" probablemente no obtendrá una respuesta, pero "¿Puede decirme por qué esta fórmula no arroja los resultados esperados?" fuerza. Mencione la aplicación y la versión que está utilizando. TechRepublic no me reembolsa por mi tiempo o experiencia cuando ayudo a los lectores, ni cobro una tarifa por los lectores a los que ayudo. Puede ponerse en contacto conmigo en [email protected]