Inputbox en Excel VBA – Una guía completa

Altavoz inteligente Echo Dot

¿Deseas estudiar a hacer un Caja de entrada en Excel? ¡Entonces andas en el sitio preciso!

De manera frecuente, en Excel utilizamos los datos que están en el papel de trabajo. No obstante, en ocasiones asimismo requerimos algún género de aporte de los clientes. En especial en VBA, con frecuencia se necesita la entrada del usuario. Y es exactamente en este punto donde entra en juego un Inputbox (o Inbox).

Empleando Inputbox, tenemos la posibilidad de conseguir datos de usuario y emplearlos para un propósito. Si aún no conoce esta función o si ahora tiene alguna iniciativa pero quiere estudiar a hacer Inputbox en Excel, prosiga los datos de este producto.

Tras todo, ¿qué es Inputbox en Excel?

Inputbox es una herramienta (función) que deja al usuario entrar información en el papel de trabajo mediante un cuadro de entrada.

El trabajo de la función Inputbox en VBA es conseguir alguna entrada del usuario. Exhibe un cuadro de diálogo para el usuario que le da una pista de qué valor entrar y después devuelve ese valor a el papel de trabajo.

Puede utilizar esta herramienta para hacer más simple el registro de datos en una hoja de cálculo, haciéndola mucho más eficaz y menos vulnerable a fallos. Un excelente ejemplo del empleo de un cuadro de entrada en Excel es llenar formularios de registro de clientes del servicio.

Sintaxis

Por tratarse de una función, antes de estudiar a hacer un Inputbox en Excel, es requisito comprender su sintaxis, que en un caso así es:

InputBox(mensaje[, title] [, default] [, xpos] [, ypos] [, helpfile, context] )

Dónde:

  • inmediato: Se refiere al mensaje que se expone al usuario.
  • Título: Representa el título de la bandeja de entrada. Si se omite, se expone un título ya establecido de «Microsoft Excel».
  • Defecto: ¿Representa el valor por defecto de la bandeja de entrada? Este valor hace aparición en el área de escritura del cuadro de entrada.

Estos tres factores alcanzan en Excel. Ignore los otros 4 factores opcionales. Para entender esta sintaxis, vea la próxima imagen:

Sintaxis

Datos esenciales sobre InputBox

  • Esta función precisa un manejo de fallos conveniente. Si el usuario clickea en el botón anular sin entrar ningún valor, se generará un fallo.
  • Un InputBox solo puede admitir hasta 255 letras y números, pero solo puede devolver 254. Por consiguiente, siempre y en todo momento tenga precaución con la longitud máxima de un valor que el usuario puede entrar.
  • en contraste a un MsjBoxun InputBox siempre y en todo momento debe tener una variable a la que logre devolver los desenlaces.
  • Otro inconveniente con esta función es que en ocasiones los individuos tienen la posibilidad de entrar algo que no se estima. Por servirnos de un ejemplo, si le pide al usuario algún número entero y el usuario ingresa una cadena de artículo, entonces su código se va a romper. Por ende, es esencial comprender de qué manera lidiar con estos inconvenientes.

¿De qué manera hacer un cuadro de entrada en Excel?

Para hacer un cuadro de entrada en Excel, prosiga los pasos ahora:

1. entrar a la guía Creador > VBA.

2. En la pantalla de edición de VBA, introduzca un nuevo módulo en la pestañita Insertar > Módulo.

Insertar un módulo en VBA

3. Lleve a cabo doble click en el módulo insertado y cree un nombre de macro.

bandeja de entrada en excel

4. En la macro construída, escriba Inputbox y dé espacio. Va a ver la sintaxis de la función como se expone ahora:

Cómo crear un cuadro de entrada en Excel

5. Dé el aviso. Para este caso de ejemplo va a ser: «Ingrese su nombre».

aviso de la bandeja de entrada

6. Ingrese el título del cuadro de entrada, por servirnos de un ejemplo: «Información personal».

título del cuadro de entrada

7. Introduzca el razonamiento por defecto. En este caso va a ser: “Escriba aquí”.

cuadro de entrada vba predeterminado

8. ¡Listo! Ejecute este código y vea su primer cuadro de entrada.

función de cuadro de entrada

De qué manera guardar el valor de InputBox en celdas

Si llegó hasta aquí, entonces ahora sabe de qué manera hacer un cuadro de entrada en Excel VBA. No obstante, posiblemente haya sentido que en el momento en que ingresa un valor y clickea en Admitir, el valor ingresado no se guarda en el papel de trabajo. Para llevar a cabo esto, prosiga los pasos ahora:

1. Cree una macro y declárela con el tipo Variant.

Sub Test_Inputbox()
Valor dim Como variaciones

Terminar sub

2. Para esta variable, asigne el valor a través del Inputbox de la próxima forma:

Sub Test_Inputbox()
Valor dim Como variaciones
value = InputBox(«Ingrese su nombre», «Información personal», «Ingrese aquí»)
Terminar sub

Esencial: Como en un caso así el cuadro de entrada viene a la derecha del signo igual, debemos entrar los razonamientos o la sintaxis entre paréntesis, como lo hacemos en las fórmulas de Excel.

3. En este momento, cualquier valor ingresado en el cuadro de entrada, debemos almacenarlo en la celda A1. Conque para eso redacta el código como Rango(«A1»).Valor = valor

Sub Test_Inputbox()
Valor dim Como variaciones
value = InputBox(«Ingrese su nombre», «Información personal», «Ingrese aquí»)
Rango(«A1»).Valor = valor
Terminar sub

¡Listo! Puede realizar este código presionando la tecla F5. En el momento en que ejecute el código, va a ver el cuadro de entrada. Introduzca el valor en el campo pertinente y lleve a cabo click en Admitir.

Va a ver el valor del cuadro de entrada en la celda A1.

Cómo almacenar el valor de InputBox en celdas

Observación: Puede guardar cualquier valor de Inputbox si la variable está configurada apropiadamente. En el ejemplo previo, definimos la variable con tipo variación, que puede contener toda clase de datos.

Por poner un ejemplo, en este momento cambiamos el género de variable a Fecha.

ejemplo de bandeja de entrada en excel

En este momento, si ejecuta el código y también ingresa algún otro valor que no sea una fecha, conseguirá un fallo.

Tipos no coincidentes del cuadro de entrada

Conseguimos el fallo: no coincide el tipo, en tanto que declaramos el género de datos de la variable como FECHA, no tenemos la posibilidad de guardar solamente que la fecha empleando el cuadro de entrada.

En este momento ingrese una fecha y vea qué ocurre.

cuadro de entrada para ingresar fechas solamente

Creación de una validación de entrada de datos (Application.InputBox)

Tratándose de Inputbox en Excel, solo tenemos la posibilidad de dejar que el usuario ingrese valores concretos, esto es, dejar que el usuario ingrese solo artículo, solo números, solo valores lógicos, etcétera.

Para efectuar esta labor, requerimos emplear el procedimiento App.InputBox. La configuración es idéntica a la función Inputbox que terminamos de ver, pero con la adición de un último razonamiento, el Tipo. La sintaxis de este procedimiento es

El razonamiento Tipo representa lo que habría de ser la cadena de entrada. Ahora se detallan las validaciones libres.

Valor Sentido
0 Solo admite fórmulas
1 Solo admite numero
2 Admite solo artículo (cadena)
4 Admite solo valor lógico (verdadero o falso)
8 Solo referencia de celda, con apariencia de objeto Range
dieciséis Valor de fallo como #N/A
64 Matriz de valor

Ejemplo:

En este caso de ejemplo, si solo precisa validar la entrada de números en un cuadro de entrada, puede utilizar el próximo código:

Sub Inputbox_Number()
número = Application.InputBox(«Ingrese un número», «Número», «Ingrese aquí», Tipo:=1)
Rango(«A1»).Valor = número

Terminar sub

Tenga presente en el código previo que el razonamiento Tipo está predeterminado en 1, esto es, el cuadro de entrada solo aceptará números. Esto quiere decir que si el usuario procura entrar un valor que no sea un número, conseguirá el fallo “El número no es válido.

Aplicación.InputBox

También, puede utilizar los otros valores en el razonamiento Tipo para validar otros géneros de entrada como artículo, valores lógicos, etcétera.

Ejemplos de cuadro de entrada

Hasta la actualidad, vimos los primordiales conceptos relacionados con Inputbox en Excel. Y para reforzar aún mucho más en la educación, observemos ciertos ejemplos prácticos del empleo de esta función.

Ejemplo 1: Inputbox con Msgbox

En este primer ejemplo, le solicitamos al usuario que ingrese su nombre en el cuadro de entrada. Tenga presente en el código ahora que el usuario debe entrar un valor de tipo artículo, en tanto que declaramos que el nombre de la variable es de tipo Cadena.

El artículo escrito por el usuario en el cuadro de entrada se asignará a la variable de nombre, que paralelamente mostrará un mensaje concatenado con el nombre escrito.

Sub Test_Inputbox()
Dim nombre como cadena
nombre = InputBox(«Ingrese su nombre», «¡Puedo comprender su nombre!»)
MsgBox («Hola», & nombre & «¡Que disfrutes Excel Easy!»)
Terminar sub

Cuadro de entrada con Msgbox

Ejemplo 2: cuadro de entrada con If y Else

En este segundo ejemplo, le solicitamos al usuario que ingrese un número y después verificamos el resto tras dividir el número por 2. Si el resto es 1, el número es impar; en caso contrario, si el resto de la división es 0, entonces el numero es par

Sub Test_value()
Dim número como entero

número = InputBox(«Ingrese cualquier número:»)
resultado = número Mod 2

Si resultado = 0 Entonces
MsgBox «El número que ingresaste es par»
ElseIf resultado = 1 Entonces
MsgBox «El número que ingresaste es impar»
Terminara si
Terminar sub

Cuadro de entrada con If y Else

Ejemplo 3: Eludir fallos ocasionados ​​en el momento en que el usuario clickea en el botón Anular

Como se mentó previamente, en el momento en que el usuario clickea en el botón ‘Anular’ del cuadro de entrada, devuelve una cadena vacía. Esta cadena vacía puede producir un fallo en el código, con lo que siempre y en todo momento es una gran idea contrastar la longitud de la cadena devuelta por la función.

Si la longitud es 0, puede sospechar que el usuario debe existir hecho click en el botón Anular y, por ende, seguir consecuentemente.

Tenga presente en el código ahora, donde se pide el nombre de usuario. Si el usuario clickea en el botón Anular, se mostrará un cuadro de mensaje con una observación, en caso contrario, va a ver el mensaje de saludo.

Sub cuadro de entrada_prueba ()
Dim nombre como cadena
nombre = InputBox(«Ingrese su nombre:», «Su nombre, por favor»)

Si Len(nombre) = 0 Entonces
MsgBox “¡Por ​​favor ingrese un nombre válido! “, vbCrítico
Mucho más
MsgBox («Hola, ” & nombre & ” ¡que disfrutes Excel Easy!”)
Terminara si
Terminar sub

Error de botón de cancelación de cuadro de entrada

Ejemplo 4: Resolviendo el fallo de «Discordancia de tipos» en el cuadro de entrada

Como se mentó previamente, el fallo «Discordancia de tipos» es otro inconveniente común con el que tiene la posibilidad de tener que lidiar al utilizar la función InputBox.

Este inconveniente puede suceder en el momento en que el usuario ingresa algún valor que no aguardaba (ejemplo: artículo en vez de número). Este inconveniente no posee una solución eficaz, pero por lo menos puede eludir que el código concluya inesperadamente empleando la declaración en el caso de fallo.

El próximo código es exactamente el mismo que se usó en el ejemplo 2. No obstante, lo hicimos mucho más fuerte a los fallos añadiendo una declaración «On Fallo GoTo InvalidValue» que garantiza que toda vez que se arroja una salvedad, el código debe finalizar comunmente.

Sub Test_value()
En el caso de fallo Proceder a valor no válido
Dim número como entero

número = InputBox(«Ingrese cualquier número:»)
resultado = número Mod 2

Si resultado = 0 Entonces
MsgBox «El número que ingresaste es par»
ElseIf resultado = 1 Entonces
MsgBox «El número que ingresaste es impar»
Terminara si

Valor no válido:
MsgBox «¡Ha ingresado un valor no válido!», vbCritical
Terminar sub

resolviendo el error "tipos incompatibles" en el cuadro de entrada

Consulte asimismo los próximos consejos de Excel:

Entonces, ¿qué te pareció el tutorial sobre Inputbox en Excel VBA? ¿Tuviste alguna duda? ¡Deje su comentario ahora y prosiga siguiendo mucho más consejos de Excel en nuestro cibersitio!

Tommy Banks
Estaremos encantados de escuchar lo que piensas

Deje una respuesta

TecnoBreak | Ofertas y Reviews
Logo
Enable registration in settings - general
Shopping cart