Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

¿Qué es un inputbox?

| Sin comentarios

El Inputbox nos ofrece una entrada para un determinado dato colocado por el usuario. Se divide de manera visual en dos partes, la parte superior del Inputbox se muestra un mensaje para el usuario, y en la parte inferior hay una caja de texto en donde el usuario podrá agregar un valor. Esta función se escribe: Inputbox (Prompt, Title, Default).

Como se muestra en la imagen, hay tres parámetros principales: 

a) Prompt: especifica la leyenda que mostrará la caja de mensajes

b) Title: es el título que llevará el cuadro de diálogo 

c) Default: es el texto que mostrará la caja de texto. 

Entre las ventajas tenemos que el InputBox nos permite desarrollar una tarea específica dependiendo del valor brindado por el usuario.

Una vez que conocemos las partes del InputBox, detallaremos algunos ejemplos de esta función. 

Ejemplo 1.

Primero: solicitar varios nombres usando Inputbox. Para ello, copiaremos la siguiente indicación.

Sub Ejemplo1 ()

Dim x As String

Dim y As Integer

Range ("A1").Select

For y = 0 To 5

x= (InputBox("Ingrese su nombre"),"Nombre")

ActiveCell.Offset(y,0).Value = x

Next

End Sub

Como se muestra en las imágenes anteriores, el usuario podrá digitar el nombre en la caja de texto y al dar aceptar se colocará en la celda que se especifica en la instrucción.

Ejemplo 2.

Cuando solicitamos un nombre y lo colocamos en una celda, la instrucción y el resultado se mostrarán a continuación.

Ejemplo 3.

Buscar un dato con ayuda de un imput box y cambiarlo mediante el uso de otro.

Para realizar el ejemplo primero copiar el siguiente macro:

Sub EjemploInputBox()

x = InputBox("Introducir dato a buscar", "Buscar datos")

For o = 1 To 100

ult = Cells(Rows.Count, 1).End(xlUp).Row

For y = 1 To ult

If Cells(y, o) = x Then

MsgBox ("Lo encontre")

Cells(y, o).Select

 With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .Color = 65535

        .TintAndShade = 0

        .PatternTintAndShade = 0

    End With

nuevo = InputBox("Escribir a lo que desea cambiar", "cambiar")

Cells(y, o) = nuevo

Cells(y, o).Select

     With Selection.Interior

        .Pattern = xlNone

        .TintAndShade = 0

        .PatternTintAndShade = 0

    End With

MsgBox ("Se cambio el dato")

End If

Next

Next

End Sub

OBSERVACIÓN: Para columnas decidí hacerlo hasta la columna 100.

Básicamente lo que hace el código es registrar un valor en inputbox 1, luego buscarlo en la hoja y cambiarlo al valor que redactemos en el inputbox 2.

En el input box redactamos la palabra que deseamos buscar:

 

Muestra un mensaje de “Lo encontré” al encontrar el valor escrito.

Se ubica en la celda donde se encuentra el dato buscado y pinta la celda de amarillo para ubicarla de manera rápida, además sale un nuevo input box donde podemos escribir la palabra a la que deseamos cambiar.

Al darle aceptar cambia automáticamente la palabra, le quita el formato de la celda y te avisa del cambio.

Ejemplo 1-2

Ejemplo3

 

 

 

 

Deja un comentario

Los campos requeridos estan marcados con *.