En Excel, tenemos varias formas de obtener información. Podemos obtener entradas usando argumentos de función, usar celdas y rangos de Excel como áreas de entrada y luego recuperar valores desde allí. También puede utilizar formularios de usuario para obtener información de los usuarios. Pero Excel proporciona una forma más de obtener información de los usuarios. Se llaman InputBox.
Un InputBox en VBA es una especie de formulario de usuario prediseñado. Puede utilizar un cuadro de entrada para obtener varios tipos de entrada. Pero una entrada solo puede obtener un tipo de entrada a la vez. Excel tiene dos tipos de Inputboxes. Uno es InputBox simple y el otro es Application InputBox. El cuadro de entrada tiene varios argumentos para tratar con diferentes tipos de entrada. Conoceremos algunos de ellos en este artículo.
InputBox simple de VBA
Este cuadro de entrada se puede usar directamente en VBA porque es una función. Esta función solicita un formulario de usuario para que ingrese un valor. La sintaxis de la función InputBox es:
InputBox (mensaje, [Título], [Predeterminado], [Xpos], [YPos], [HelpFile], [Contexto]) |
inmediato: Es el único argumento requerido. Es una expresión de cadena que se muestra como mensaje en el cuadro de diálogo. La longitud máxima del mensaje es de aproximadamente 1024 caracteres, dependiendo del ancho de los caracteres utilizados. Si el mensaje consta de más de una línea, puede separar las líneas utilizando un carácter de retorno de carro (Chr (13)), un carácter de salto de línea (Chr (10)) o una combinación de caracteres de retorno de carro y salto de línea ((Chr (13) & (Chr (10)) entre cada línea.
[título]: Es opcional. Es una expresión de cadena que se muestra en la barra de título del cuadro de diálogo. Si omite el título, el nombre de la aplicación se coloca en la barra de título. Si está utilizando Excel, mostrará Microsoft Excel.
[defecto]: También es opcional. Es una expresión de cadena que se muestra en el cuadro de texto como respuesta predeterminada si no se proporciona ninguna otra entrada. Si omite el valor predeterminado, el cuadro de texto se muestra vacío.
[xpos]: Expresión numérica que especifica, en twips, la distancia horizontal del borde izquierdo del cuadro de diálogo desde el borde izquierdo de la pantalla. Si se omite xpos, el cuadro de diálogo se centra horizontalmente.
[ypos]: Expresión numérica que especifica, en twips, la distancia vertical del borde superior del cuadro de diálogo desde la parte superior de la pantalla. Si se omite ypos, el cuadro de diálogo se coloca verticalmente aproximadamente a un tercio del camino hacia abajo en la pantalla.
[archivo de ayuda]: Expresión de cadena que identifica el archivo de ayuda que se utilizará para proporcionar ayuda contextual para el cuadro de diálogo. Si se proporciona un archivo de ayuda, también se debe proporcionar contexto.
[contexto]: Expresión numérica que es el número de contexto de la Ayuda asignado al tema de Ayuda correspondiente por el autor de la Ayuda. Si se proporciona contexto, también se debe proporcionar un archivo de ayuda.
Basta de teoría. Veamos algunos ejemplos para entender cómo usar esta función de cuadro de entrada.
Ejemplo 1: Obtener información para saludar al usuario
Digamos que quiero que mi sub salude al usuario. Así que pediré el nombre del usuario y lo saludaré como "Hola Nombre de usuario". Para eso usaré este código:
Sub InputBoxExample () user_name = InputBox ("Ingrese su nombre") MsgBox ("Hola" & user_name & "!") End Sub
Cuando ejecute el código anterior en VBA, aparecerá un formulario de usuario con el encabezado "Por favor
Ingrese su nombre. "Con un cuadro de texto a continuación.
Puede ver que la ventana se llama "Microsoft Excel" y el cuadro de texto está vacío. Porque no hemos usado esos argumentos para establecer su valor.
Ejemplo 2: Establecer el título del cuadro de entrada como Saludar al usuario y establecer el valor predeterminado como Usuario
En este ejemplo, configuraremos el título como saludar al usuario para que vba no pueda mostrar el nombre de la aplicación y configuraremos el valor predeterminado como Usuario para que el cuadro de texto se muestre vacío.
Sub InputBoxExample () user_name = InputBox ("Ingrese su nombre", "Saludar al usuario", "Uesr") MsgBox ("Hola" & user_name & "!") End Sub
Cuando ejecuta el código anterior, este es el resultado que obtendrá.
Los otros argumentos no se utilizan mucho. Básicamente se utilizan para establecer la ubicación del formulario de usuario en los bordes de Excel. Los dos últimos argumentos se utilizan para proporcionar información contextual al usuario.
Entonces sí, ahora puede usar inputbox para obtener información de los usuarios en Excel usando la función Inputbox. He explicado Application.InputBox aquí. Por favor, mira esto también. Es más potente que esta función de caja de entrada.
Espero haber sido lo suficientemente explicativo y haber sido útil para ti. Si tiene alguna pregunta con respecto a este artículo o sobre cualquier otro tema de VBA, hágamelo saber en la sección de comentarios a continuación.
Introducción a Excel VBA UserForms| Explicaré cómo crear un formulario en Excel, cómo usar la caja de herramientas de VBA, cómo manejar las entradas del usuario y finalmente cómo almacenar las entradas del usuario. Repasaremos estos temas usando un ejemplo y una guía paso a paso.
Variables de VBA en Excel| VBA son las siglas de Visual Basic para Aplicaciones. Es un lenguaje de programación de Microsoft. Se utiliza con aplicaciones de Microsoft Office como MSExcel, MS-Word y MS-Access, mientras que las variables de VBA son palabras clave específicas.
Alcance variable de Excel VBA| En todos los lenguajes de programación, tenemos especificadores de acceso a variables que definen desde dónde se puede acceder a una variable definida. Excel VBA no es una excepción. VBA también tiene especificadores de alcance.
Argumentos ByRef y ByVal | Cuando se pasa un argumento como argumento ByRef a una función o sub diferente, se envía la referencia de la variable real. Cualquier cambio realizado en la copia de la variable se reflejará en el argumento original.
Elimine hojas sin mensajes de confirmación usando VBA en Microsoft Excel | Dado que está eliminando hojas usando VBA, sabe lo que está haciendo. Le gustaría decirle a Excel que no muestre esta advertencia y elimine la maldita hoja.
Agregar y guardar un nuevo libro de trabajo usando VBA en Microsoft Excel 2016| En este código, primero creamos una referencia a un objeto de libro de trabajo. Y luego lo inicializamos con un nuevo objeto de libro de trabajo. El beneficio de este enfoque es que puede realizar operaciones en este nuevo libro de trabajo fácilmente. Como guardar, cerrar, borrar, etc.
Mostrar un mensaje en la barra de estado de Excel VBA| La barra de estado en Excel se puede utilizar como monitor de código. Cuando su código VBA es extenso y realiza varias tareas usando VBA, a menudo deshabilita la actualización de la pantalla para que no vea que la pantalla parpadea.
Desactive los mensajes de advertencia con VBA en Microsoft Excel 2016| Este código no solo deshabilita las alertas de VBA, sino que también aumenta la eficiencia de tiempo del código. Veamos cómo.
Articulos populares:
50 accesos directos de Excel para aumentar su productividad | Acelera tu tarea. Estos 50 accesos directos le permitirán trabajar aún más rápido en Excel.
La función BUSCARV en Excel | Esta es una de las funciones más utilizadas y populares de Excel que se utiliza para buscar valores de diferentes rangos y hojas.
CONTAR.SI en Excel 2016 | Cuente valores con condiciones usando esta asombrosa función. No necesita filtrar sus datos para contar valores específicos. La función Countif es esencial para preparar su tablero.
Cómo usar la función SUMIF en Excel | Esta es otra función esencial del tablero. Esto le ayuda a resumir valores en condiciones específicas.