InputBox de VBA: obtenga la entrada de un usuario en una macro: ejemplos de código de VBA

Este tutorial demostrará cómo obtener información de un usuario con el cuadro de entrada VBA.

los Caja de entrada VBA nos permite pedirle al usuario que ingrese información. Luego, la información se puede utilizar en nuestro Código VBA o en una hoja de cálculo de Excel.

El cuadro de entrada de VBA con una variable

Podemos declarar una variable en nuestro código VBA que luego almacena la información que se escribe en el cuadro de entrada. Entonces podemos usar esta variable en nuestro código.

Dependiendo del tipo de información que queremos que se devuelva del cuadro de entrada, podemos declarar un tipo específico de variable para devolver texto (una cadena o variable variante) o para devolver un número (una variable entera, larga, doble o simple).

La variable de cadena con un cuadro de entrada

Así es como puede crear un InputBox donde los datos se devuelven a una variable de cadena.

123 Dim strInput como cadenastrInput = InputBox ("Este es mi InputBox", "MyInputTitle", "Ingrese su texto de entrada AQUÍ")

Observe primero que declaramos una variable. A esta variable se le asignará el valor que ingrese el usuario. Usamos el tipo de variable Cadena para que el cuadro de Entrada acepte cadenas de texto (que incluye cualquier carácter alfanumérico).

La variable numérica con un cuadro de entrada

Si declara una variable numérica, deberá ingresar un número solo en el cuadro de entrada.

12 Dim iInput como enteroiInput = InputBox ("Ingrese un número", "Crear número de factura", 1)

Primero declaramos la variable numérica como una variable entera. Luego, también podemos poner un valor predeterminado de 1 en el cuadro de entrada.

Si tuviéramos que ingresar una cadena en lugar de un número y luego hacer clic en Aceptar, obtendríamos un Error de no coincidencia de tipo ya que una variable numérica no acepta una cadena.

Obtener información de un usuario

Aquí hay otro ejemplo que usa las características más populares de un InputBox.

El siguiente código hace tres cosas:

1. Solicita la entrada con un InputBox y lo asigna a una variable

2. Verifica la entrada, de lo contrario sale del sub

3. Devuelve la entrada en un cuadro de mensaje.

12345678910111213 Sub público MyInputBox ()Atenuar MyInput como cadenaMyInput = InputBox ("Este es mi InputBox", "MyInputTitle", "Ingrese su texto de entrada AQUÍ")Si MyInput = "Ingrese su texto de entrada AQUÍ" O MyInput = "" EntoncesSalir de SubTerminara siMsgBox "El texto de MyInputBox es" & MyInputEnd Sub

Devolver la entrada a una hoja de Excel

Puede devolver la entrada que escribe en un cuadro de entrada en una celda específica en su hoja de Excel.

1 Range ("P1") = InputBox ("Por favor escriba su nombre", "Introduzca el nombre", "Introduzca el nombre AQUÍ")

También podemos devolver datos de entrada a una hoja de Excel usando una variable.

12345678910 Sub EnterNumber ()En caso de error, reanudar siguienteDim dblAmount As DoubledblAmount = InputBox ("Ingrese la cantidad requerida", "Ingrese la cantidad")Si dblAmount 0 EntoncesRango ("A1") = dblAmountDemásMsgBox "¡No ingresó un número!"Terminara siEnd Sub

En el ejemplo anterior, debemos ingresar un número. Si ingresamos un número, entonces la variable dblAmount pondrá el número en la hoja de Excel en la celda A1. Sin embargo, si no ingresamos un número, entonces un cuadro de mensaje nos dirá que no ingresamos un número y no se colocará nada en la celda A1.

Usando VBA InputBox en Access VBA

El cuadro de entrada de VBA funciona exactamente de la misma manera en Access que en Excel cuando se devuelve la entrada del usuario en forma de cuadro de mensaje.

Sin embargo, si desea devolver la entrada del usuario a la base de datos, deberá usar el objeto Recordset en lugar del objeto Range como se usa en Excel.

1234567891011121314 Sub EnterInvoiceNumber ()Dim dbs como base de datosDim rst As RecordsetEstablecer dbs = CurrentDbEstablecer rst = dbs.OpenRecordset ("tblMatters", dbOpenDynaset)Con la primera.AñadirNuevo! InvNo = InputBox ("Introduzca el número de factura", "GENERACIÓN DE NÚMERO DE FACTURA", 1).ActualizarTerminar conprimer cierreEstablecer rst = NadaEstablecer dbs = NadaEnd Sub

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave