Resumen Operaciones con fechas??

>Como puedo restar dos fechas de tal manera que me de como resultado los
>anios y meses tranascurridos es decir asi: 24 anios 3 meses.

Se me ocurre que podrías hacer una función de este estilo:

Function DifFechAM (ByVal strFecIni As String, ByVal strFecFin As String)
As String
Dim NumMes As Integer, NumAño As Integer, aux As String
Dim datFecIni As Variant, datFecFin As Variant

'comprobamos que las fechas sean válidas
If Not IsDate(strFecIni) Then
    DifFechAM = "Fecha inicio errónea"
    Exit Function
End If
If Not IsDate(strFecFin) Then
    DifFechAM = "Fecha fin errónea"
    Exit Function
End If

datFecIni = DateValue(strFecIni)
datFecFin = DateValue(strFecFin)
'para que la diferencia siempre sea positiva
If datFecIni > datFecFin Then
    NumMes = DateDiff("m", datFecFin, datFecIni)
Else
    NumMes = DateDiff("m", datFecIni, datFecFin)
End If
NumAño = CInt(NumMes / 12)
NumMes = NumMes - (12 * NumAño)
aux = ""
If NumAño <> 0 Then
    aux = CStr(NumAño) + " año"
    If NumAño > 1 Then aux = aux + "s"
    aux = aux + " "
End If
If NumMes <> 0 Then
    aux = aux & NumMes & " mes"
    If NumMes > 1 Then aux = aux + "es"
End If
DifFechAM = Trim$(aux)
End Function

>PD: Hay alguna forma de validar que una estrada en un box sean solo
>numeros?
En el evento KeyPress del textbox pon :

KeyAscii = SoloNumerico(KeyAscii)

Y la función sería :

Function SoloNumerico (tecla As Integer) As Integer

If tecla > 32 And (tecla < Asc("0") Or tecla > Asc("9")) Then
    Beep
    SoloNumerico = 0
    Exit Function
End If
SoloNumerico = tecla
End Function

No es perfecto pero puede servir.

Un saludo.

_________________________________________________
José Rubí de la Vega
E-mail : jrubi@arrakis.es
WWW : http://www.arrakis.es/~jrubi
Podrás encontrar información sobre VB, la lista
VB-ESP y un resumen de los mensajes de la misma



Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com