Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Selection plage entre dates

3 réponses
Avatar
Domi
Bonjour,
Dans la colonne A, j'ai des dates (jours ouvrés uniquement).
Je voudrais via VBA, selectionner une partie de la plage de date selon les
critères suivants :
Cellulede début : A13 facile jusue là ... ;o)
Cellule de fin : cellule contenant la date la plus proche (sup ou inf...) de
"date du jour + 1 an" (date + 365)
Je precise la plus proche car J+1an n'existe peut être pas si ça n'est pas
un jour ouvré.
Merci pour votre aide.
Domi

3 réponses

Avatar
Daniel
Bonjour.
Teste :

Sub test()
Dim DateDeb As Date, DateFin As Date, DateFinOuvree As Date
Dim Deb As Range, Fin As Range
DateDeb = "09/06/7"
DateFin = DateDeb + 365
DateFinOuvree = DateFin + Choose(Weekday(DateFin), 1, 0, 0, 0, 0, 0, -1)
If Not IsNumeric(Application.Match(DateDeb * 1, Range("A:A"), 0)) Then
Set Deb = Cells(Application.Match(DateDeb * 1, Range("A:A"), 1) + 1, 1)
Else
Set Deb = Cells(Application.Match(DateDeb * 1, Range("A:A"), 0), 1)
End If
If Not IsNumeric(Application.Match(DateFinOuvree * 1, Range("A:A"), 0))
Then
Set Fin = Cells(Application.Match(DateFinOuvree * 1, Range("A:A"), 1) +
1, 1)
Else
Set Fin = Cells(Application.Match(DateFinOuvree * 1, Range("A:A"), 0),
1)
End If
Range(Deb, Fin).Select
End Sub

Cordialement.
Daniel
"Domi" a écrit dans le message de news:

Bonjour,
Dans la colonne A, j'ai des dates (jours ouvrés uniquement).
Je voudrais via VBA, selectionner une partie de la plage de date selon les
critères suivants :
Cellulede début : A13 facile jusue là ... ;o)
Cellule de fin : cellule contenant la date la plus proche (sup ou inf...)
de "date du jour + 1 an" (date + 365)
Je precise la plus proche car J+1an n'existe peut être pas si ça n'est pas
un jour ouvré.
Merci pour votre aide.
Domi




Avatar
Jacky
Bonsoir,
Ceci peut-être:
'----------
Sub jj()
Dim x As Double
x = Date + 365
Range("a13:a" & Application.Match(x, [a:a], 1)).Select
End Sub
'--------
Salutations
JJ

"Domi" a écrit dans le message de news:

Bonjour,
Dans la colonne A, j'ai des dates (jours ouvrés uniquement).
Je voudrais via VBA, selectionner une partie de la plage de date selon les
critères suivants :
Cellulede début : A13 facile jusue là ... ;o)
Cellule de fin : cellule contenant la date la plus proche (sup ou inf...)
de "date du jour + 1 an" (date + 365)
Je precise la plus proche car J+1an n'existe peut être pas si ça n'est pas
un jour ouvré.
Merci pour votre aide.
Domi




Avatar
Domi
Impec, testé et approuvé ;o)
Merci

"Jacky" a écrit dans le message de news:

Bonsoir,
Ceci peut-être:
'----------
Sub jj()
Dim x As Double
x = Date + 365
Range("a13:a" & Application.Match(x, [a:a], 1)).Select
End Sub
'--------
Salutations
JJ

"Domi" a écrit dans le message de news:

Bonjour,
Dans la colonne A, j'ai des dates (jours ouvrés uniquement).
Je voudrais via VBA, selectionner une partie de la plage de date selon
les critères suivants :
Cellulede début : A13 facile jusue là ... ;o)
Cellule de fin : cellule contenant la date la plus proche (sup ou inf...)
de "date du jour + 1 an" (date + 365)
Je precise la plus proche car J+1an n'existe peut être pas si ça n'est
pas un jour ouvré.
Merci pour votre aide.
Domi