Comparaisons de plages de dates

Bonjour,

Je suis en train de créer un fichier VBA via Excel pour la gestion de mes locations. Je souhaite pouvoir trouver facilement si un type de véhicule est disponible sur une certaine période. Pour cela, j'ai créé un userform pour ma recherche. Mais il me manque une ligne pour comparer des dates:

Si j'ai 3 véhicules de type A:

J'en ai 1 en location du 01/06/16 au 31/10/16

Un 2ème en location du 01/07/16 au 31/07/16

Un 3ème en location du 01/07/16 au 03/07/16

Je souhaite que si je j'effectue une recherche pour ce même type A pour une location du 01/08/16, le logiciel m'indique que 2 véhicules sont disponibles (le premier étant déjà loué).

Il me manque la formule pour comparer toutes ces dates.

j'espère que vous allez pouvoir m'aider et je remercie tout ceux qui vont passer du temps sur mon "cas"

cdt

Bonsoir,

tu ne nous dis pas ou sont placé tes dates .. en considérant qu'en colonne D du a la date de début de la location en colonne F la date de fin ...

que tu saisie en A1 la date à chercher ...

tu peu mettre en colonne R une formule du genre

=OU($A$1 < D2 ; $A$1>F2) 

et tu filtre sur les lignes avec VRAI en colonne R...

Bonsoir Pierre.jy,

Merci pour cette réponse

Cette recherche passe par une macro et celles va déjà rechercher chaque dates au bon endroit:

date1 = date de début de la plage recherchée

date2 = date de fin de la plage recherchée

date3= date de début de la location

date4=date de fin de la location

Ma macro lit toutes les lignes présentes dans mon tableau via un for next

J'avais pensé a ta formule mais mon problème est que si j'effectue une recherche entre le 02/07/16 et le 04/07/16, la macro ne détecte pas que tout les véhicules sont déjà pris (il m'indique qu'1 véhicule est encore disponible)

Cdt

Et tu l'effectue comment ta recherche ...? ... maintenant tu as 2 jours de location alors que dans ton premier message tu en avais q'une ...

il faut adapter la formule ...

bonsoir

pesupiot a écrit :

Je suis en train de créer un fichier VBA via Excel pour la gestion de mes locations

pesupiot a écrit :

Il me manque la formule pour comparer toutes ces dates.

on dit pas formule si on parle de vba mais fonction , code , macros .....

je pense que le MOT "formule " est reservé pour les formule de la feuille d EXEL d ou la reponse de pierre.jy

voila une proposition :

Sub test()
Dim Dttvl()
Dim marque As String, i As Integer, nbr As Integer
Dim dmd As Date, fin As String, dbdt As Date, fndt As Date

ReDim Dttvl(3, 5)

Dttvl(0, 0) = "A": Dttvl(0, 1) = "rouge"
Dttvl(1, 0) = "B": Dttvl(1, 1) = "blanche"
Dttvl(2, 0) = "A": Dttvl(2, 1) = "grise"
Dttvl(3, 0) = "A": Dttvl(3, 1) = "noire"

Dttvl(0, 2) = "01/06/16": Dttvl(0, 3) = "31/10/16"
Dttvl(1, 2) = "01/07/16": Dttvl(1, 3) = "31/07/16"
Dttvl(2, 2) = "01/07/16": Dttvl(2, 3) = "03/07/16"
Dttvl(3, 2) = "01/07/16": Dttvl(3, 3) = "03/07/16"

'type A pour une location du 01/08/16
marque = "A": dmd = "01/08/16"
For i = 0 To 3
If Dttvl(i, 0) = marque Then
dbdt = Dttvl(i, 2): fndt = Dttvl(i, 3)
If Not (dmd >= dbdt And dmd <= fndt) Then
nbr = nbr + 1
fin = fin & Chr(10) & "Une véhicule " & Dttvl(i, 1) & " disponible pour la fin de : " & Dttvl(i, 3)
End If
End If
Next
MsgBox nbr & " véhicules de marque " & marque & " sont disponibles  " & fin

End Sub
Rechercher des sujets similaires à "comparaisons plages dates"