Sunteți pe pagina 1din 2

nacimiento.

xls

Dia de Nacimiento y Edad


Fórmula definida por
el usuario que calcula
Fecha Actual 8/18/2010 la edad en años MACRO
Fecha Option Explicit
Tratamiento Nombre Apellido Edad
nacimiento
Sr. Jose García 6/12/1969 #VALUE! Sub nacimiento()
Sra. Ana Bronchalo 4/15/1953 #VALUE! Dim dias As Integer, Dsemana As Integer, F
Sra. Isabel Borrallo 2/29/1952 #VALUE! Rem Dsemana es una variable que da un n
Sr. Juan Montoya 12/31/1947 #VALUE! Rem dado por la función WEEKDAY, que e
Sr. Andrés Pérez 1/1/1984 #VALUE! Static Fnacimiento As Date
Sra. Pino Sanroman 6/29/1962 #VALUE! Factual = Date 'Date es la función de VBA e
Fnacimiento = Factual
Fnacimiento = InputBox(Prompt:="Introduzc
Function CalEdad(Fnacimiento As Date) Title:="Formato DD-MM-AAAA", Default:=F
Dim Fecha As Date dias = Factual - Fnacimiento
CalEdad = Abs(DateDiff("yyyy", Fnacimiento, Date)) Dsemana = Application.WorksheetFunction
Fecha = DateAdd("YYYY", CalEdad, Fnacimiento) Select Case Dsemana
If Fecha > Date Then CalEdad = CalEdad - 1 Case 1: d = "Domingo"
End Function Case 2: d = "Lunes"
Case 3: d = "Martes"
Case 4: d = "Miercoles"
Sub Trimestres() Case 5: d = "Jueves"
'Proporciona el trimestre en el que se encuentra una fecha Case 6: d = "Viernes"
Dim LaFecha As Date Case 7: d = "Sabado"
Dim Msj End Select
LaFecha = InputBox("Escriba una fecha:") MsgBox Prompt:="Usted nació un " & d & "
Msj = "Trimestre: " & DatePart("q", LaFecha) & "Tiene " & CalEdad(Fnacimiento) & " Año
'DatePart es una función VBA Title:="Esta información es correcta siempr
MsgBox Msj End Sub
End Sub
Integer, Dsemana As Integer, Factual As Date, d As String
na es una variable que da un número que indica el día de la semana
or la función WEEKDAY, que en Excel es =DIASEM(fecha)
miento As Date
ate 'Date es la función de VBA equivalente a =HOY()

= InputBox(Prompt:="Introduzca su fecha de nacimiento", _


ato DD-MM-AAAA", Default:=Fnacimiento)
al - Fnacimiento
Application.WorksheetFunction.Weekday(Fnacimiento)

= "Domingo"

= "Miercoles"

mpt:="Usted nació un " & d & " hace " & dias & " días" & Chr(10) _
CalEdad(Fnacimiento) & " Años", _
nformación es correcta siempre que hoy sea " & Factual

S-ar putea să vă placă și