Propiedad de valor de VBA

Propiedad de valor de Excel VBA

El valor es una propiedad en VBA que se usa principalmente con el método de rango para asignar un valor a un rango específico, es una expresión incorporada en VBA, por ejemplo, si usamos rango ("B3"). Valor = 3 esto asignará celda B3 un valor de 3, no necesariamente esa propiedad de valor se debe usar con el método de rango solo, también podemos usarlo con otras funciones.

Al principio de nuestro aprendizaje con VBA, tenemos mucha curiosidad por aprender cómo almacenar los datos en las celdas. Si tiene tanta curiosidad, debe comprender la propiedad "Valor". En este artículo, le explicaremos sobre la propiedad "Valor", cómo insertar o establecer valores, cómo obtener valor de la celda y muchas otras cosas.

En uno de los artículos anteriores, hemos analizado las "celdas de rango VBA". El objeto de rango puede ayudarnos a referirnos a una sola celda así como a múltiples celdas. Para usar el objeto RANGE primero debemos decidir para qué celda necesitamos insertar el valor y cuál es el valor que vamos a insertar.

¿Cómo usar Value Property en VBA?

Puede descargar esta plantilla de Excel de función de valor de VBA aquí - Plantilla de Excel de función de valor de VBA

Ejemplo n. ° 1 - Objeto de rango para asignar valores a celdas

  • Por ejemplo, si desea insertar un valor en la celda A1, debe hacer referencia a la celda A1 como este Rango ("A1")

Código:

 Subvalor () Rango ("A1") End Sub 

  • Después de referir la celda usando el objeto RANGE, ahora ponga un punto (.) Para ver la lista de IntelliSense de todas las propiedades y métodos asociados con este objeto.

Código:

Intervalo de subvalor () ("A1"). End Sub

  • De esta variedad de opciones seleccione la propiedad “VALOR”.

Código:

 Valor secundario () Rango ("A1"). Valor final secundario 

  • Una vez seleccionada la propiedad "VALOR", debemos establecer el valor en la celda A1 poniendo el valor en el signo igual.

Código:

 Valor secundario () Rango ("A1"). Valor = "Bienvenido a VBA" End Sub 

  • Ok, esto insertará el valor "Bienvenido a VBA" en la celda A1.

  • Si desea insertar el mismo valor en varias celdas, consulte las celdas como el siguiente código.

Código:

 Valor secundario () Rango ("A1: A5"). Valor = "Bienvenido a VBA" End Sub 
  • Esto insertará el valor de la celda A1 a A5 .

  • Si desea insertar valores en diferentes celdas pero no para series de la celda, entonces debemos usar el código y la dirección de la celda en argumentos separados como el siguiente.

Código:

 Valor secundario () Rango ("A1, A5, B4, C2"). Valor = "Bienvenido a VBA" End Sub 
  • Esto insertará el texto "Bienvenido a VBA" en las celdas A1, A5, B4 y C2 .

Ejemplo # 2 - Insertar valor usando la propiedad CELLS

No a través del objeto RANGE sino también usando la propiedad VBA CELLS podemos insertar valores. Pero uno de los problemas con el objeto CELLS es que no tenemos acceso a la lista de IntelliSense como obtuvimos para el objeto RANGE.

Aquí debemos mencionar los números de fila y columna que necesitamos para insertar el valor. Por ejemplo, si desea insertar el valor en la celda A1, entonces el código es CELLS (1,1), si desea insertar el valor en la celda B5, entonces el código es CELLS (5,2), es decir, igual a B5. célula.

No podemos insertar valores en múltiples celdas usando la propiedad CELLS, esto es diferente a nuestro objeto RANGE.

Ejemplo n. ° 3 - Obtener valor de celda

Hemos visto cómo insertar valores en las celdas, ahora veremos cómo obtener valores de las celdas.

Paso 1: Defina una variable como Cadena.

Código:

 Subvalor () Dim K As String End Sub 

Paso 2: Para esta variable “k” asignaremos el valor de la celda A1. En la celda A1, ingresé el valor "Bienvenido a VBA".

Entonces el código será k = Rango ("A1"). Valor

Código:

 Valor secundario () Dim K As String K = Rango ("A1"). Valor End Sub 

Paso 3: Muestre el resultado de la variable "k" en el cuadro de mensaje de VBA.

Código:

 Valor secundario () Dim K As String K = Rango ("A1"). Valor MsgBox K End Sub 

Al ejecutar el código, deberíamos obtener el resultado del valor de la celda A1 en el cuadro de mensaje.

También podemos usar el objeto RANGE para obtener los datos de la celda A1, el siguiente código le mostrará lo mismo.

Código:

 Subvalor () Dim K As String Set CellValue = Range ("A1") MsgBox CellValue End Sub 

Esto también debería obtener el valor de la celda A1 en el cuadro de mensaje.

Ejemplo 4: valor de error si se requiere más de un valor de celda

Para ver un ejemplo, mire el siguiente código.

Código:

 Valor secundario () Dim K como rango Establecer CellValue = Rango ("A1: A5") MsgBox CellValue End Sub 

Si ejecuta el código anterior, obtendremos el error "No coinciden los tipos".

La razón por la que obtenemos este error es que cuando la variable de objeto establecida en más de una propiedad de "valor" de celda no comprende realmente qué valor de celda se debe dar, por lo que puede obtener un valor de celda individual a la vez.