Cómo puedo crear o hacer un botón flotante en Excel - Paso a paso

app travel claim

Cuando trabajas sobre una hoja de Excel con varios cientos o miles de registros, se te presentan diversos inconvenientes. Entre los que destacan la molestia de no saber dónde colocar el botón que ejecute la macro automaticamente que has desarrollado, para un fin en específico.

Dicha tarea es un poco difícil, ya que siempre estás moviendo el puntero en todas las direcciones, saliéndote muchas veces del campo visual. Por lo tanto, te explicaremos de forma sencilla cómo podrás crear un botón flotante para la macro que se ha desarrollado previamente.

Cómo Puedo Crear o Hacer un Botón Flotante en Excel - Paso a Paso

Cómo crear un Botón Flotante en Excel

Es necesario destacar que, existen diferentes formas de crear un botón flotante que este asociado a una macro y que esté siempre visible. Por lo tanto, las alternativas más populares son:

Crear un botón flotante mediante una autoforma

Este método constituye uno de los más prácticos y sencillos, ya que permite darle la forma y el color que quieras a tu botón, entonces:

  • Primero crea tu botón con una autoforma, a tu gusto.
  • Asígnale un nombre al botón, como por ejemplo “btnEjecutar”.
  • Ahora, crea una macro con el siguiente código dentro de la hoja en la que dibujaste el botón. Esto es debido a que debes controlar el evento Worksheet_SelectionChange que se disparará cada vez que cambies la selección.

comandos ejecutar

  • En este código, le estamos indicando a Excel que cada vez que nos movamos por la hoja, calcule la posición de la celda y se la asigne a la autoforma que tiene por nombre “btnEjecutar”.
  • Al ejecutar dicho código ya habrás creado tu botón flotante que se moverá por toda la hoja de Excel cada vez que cambiamos la celda activa. Sin embargo te presente siempre que:
  1. Con el atributo .Left del botón creado, se está indicando que la distancia desde la izquierda de la pantalla, sea igual a la distancia que tiene la celda que está a la derecha de la celda activa.
  2. Con el atributo .Top del botón creado, se está asignando la misma distancia que tiene la celda activa desde la parte superior de la pantalla.
  3. El atributo .Height permite adaptar el alto de la celda activa. Puedes eliminar esta línea si tienes una planilla con muchas filas de diferente altura.

Elabora un UserForm flotante definiéndolo como modeless

Este método para elaborar un botón flotante implica conocimientos más avanzados de programación, entonces:

  • Abre el editor de Vba y agrega un Userform.
  • Sobre el Userform  pega un botón.
  • Cambia el valor de Caption en la ventana de propiedades del botón.
  • Realiza doble clic sobre el botón para abrir el módulo y coloca el código de un ShowModal. Esto permitirá seguir trabajando en la hoja a pesar de no haber cerrado el formulario.

workbook open

  • Programa el evento Workbook_Open, si quieres que el botón aparezca en todas las hojas, cuando abras Excel

Private Sub Workbook_Open()

UserForm1 Show

End Sub

  • Si quieres que el botón aparezca solo en una hoja determinada, programa también el evento en el módulo de la hoja

Private Sub Worksheet_Activate()

UserForm1.Show

End Sub

  • Finalmente si lo deseas podrás cambiar el tamaño del UserForm y/o del botón de acuerdo a tus necesidades.

Consejos adicionales para que modifiques el código

  • Si no quieres que el botón flotante creado se mueva de columna, puedes eliminar la siguiente línea del código general.

Left = Cells(fila, columna + 1).Left

  • Por el contrario, si quisieras que tu botón no se mueva de fila, pero sí de columna, puedes eliminar la siguiente línea del código general.

Top = ActiveCell.Top

  • Si tu hoja tiene muchas filas con alturas diferentes entre sí, elimina la siguiente línea del código general.

Height = ActiveCell.Height

¿En qué te beneficia el uso de un botón flotante en Excel?

En que ya no tienes la necesidad de estar ubicando de forma manual las coordenadas del objeto en Excel que ejecuta una macro, ya que siempre lo tendrás a la vista y contiguo de la celda activa. Por lo tanto, dicho botón flotante te seguirá dependiendo de la ubicación de la celda activa.

En conclusión, si te interesa seguir ampliar tus conocimientos en Excel y quisieras conocer cómo crear una numeración consecutiva automática usando un macro de código VBA en Excel, ingresa al siguiente link.

Subir