Diseño de macros en Excel
Ejercicio. Estructuras de control
1. Crea una macro que dependiendo del valor de la celda seleccionada aplique un color de fuente.
- Si la celda contiene un número negativo, la letra deberá ser roja.
- Si no es así, aplicaremos como color de la fuente el color azul.
Esta podría ser una posible solución:
Sub Macro()
If Selection.Value < 0 Then
Selection.Font.Color = RGB(255, 0, 0)
Else
Selection.Font.Color = RGB(0, 0, 255)
End If
End Sub
2. Crea dos funciones que:
- recojan dos números de tipo Double como argumentos
- Una de las funciones debe calcular el área de un triángulo y la otra el área de un rectángulo.
Crea una macro que:
- Solicite al usuario tres datos y los guarde en tres variables: altura, base como tipo Double y una variable de tipo cadena de texto.
- Las variables altura y base recogerán estos datos necesarios para calcular el área del polígono.
- La variable de tipo texto recogerá la letra introducida por el usuario: R si se desea calcular el área de un rectángulo o T para calcular el área de un triángulo.
- Compruebe la letra que ha introducido el usuario.
- Dependiendo de la letra llame a la función correspondiente y muestre el pantalla el resultado devuelto por la función.
Esta podría ser una posible solución:
Public Function areatriangulo(altura As Double, base As Double) As Double
areatriangulo = altura * base / 2
End Function
Public Function arearectangulo(altura As Double, base As Double) As Double
arearectangulo = altura * base
End Function
Sub areas()
Dim h As Double
Dim b As Double
Dim tipo As String
Dim resultado As Double
h = InputBox("ALTURA")
b = InputBox("BASE")
tipo = InputBox("R(rectágulo) o T(Triángulo)")
If tipo = "R" Then
resultado = arearectangulo(h, b)
MsgBox "el área del rectángulo es " & resultado
Else
resultado = areatriangulo(h, b)
MsgBox "el área del triángulo es " & resultado
End If
End Sub