Mediante el objeto range es posible acceder a los valores almacenados en las celdas de Microsoft Excel.
Para ello a Range debemos de pasarle como parámetro, entre comillas, la referencia a la celda incluyendo la letra de columna y el número de la fila.
A través de este objeto podremos acceder a todas las propiedades de la Celda, entre ellas, la más importante en nuestro ejemplo es Value.
Con esta función podremos acceder al valor almacenado en una celda y usarlo en nuestro código, tras haberlo almacenado en una variable.
Este es el código que usaremos hoy (resaltada en rojo la modificación)
Sub condicional()
'Declaramos una variable numerica
Dim dia As Integer
Dim dato As String
dato = Range("B2").Value
If (Not IsNumeric(dato)) Then
MsgBox ("Error, has introducido un valor no numérico")
Else
dia = CInt(dato)
If (dia = 1) Then MsgBox ("lunes")
If (dia = 2) Then MsgBox ("martes")
If (dia = 3) Then MsgBox ("miercoles")
If (dia = 4) Then MsgBox ("jueves")
If (dia = 5) Then MsgBox ("viernes")
If (dia = 6) Then MsgBox ("sabado")
If (dia = 7) Then MsgBox ("domingo")
If (dia < 1) Then MsgBox ("Error, has introducido un error demasiado pequeño")
If (dia > 7) Then MsgBox ("Error, has introducido un error demasiado grande")
End If
End Sub
El código de hoy, recogerá el valor de la celda B2 en lugar de solicitarlo a través de una ventana mediante un InputBox.
Para ello buscamos otra forma de almacenar en la variable dato, el valor deseado.
Para ello usamos el objeto Range de Excel, con el cual accederemos al valor de la celda.
Debemos pasarle como parámetro la referencia de la celda entre comillas.
Y accederemos a la propiedad Value para obtener el valor.
Al ejecutar vemos que no se muestra la ventana, y el resultado depende del valor de la celda indicada.
Este es, quizás, el objeto más importante de Microsoft Excel.