J'ai une date de départ A1 et une date finale en B1
Je voudrais extraire et copier dans la colonne C1 les dates des vendredi
et cerise sur le gâteau seulement les 2 EME et 4 EME vendredi de chaque mois
ce qui serait préférable
Quelqu'un aurait-il une solution,
D'avance merci
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
Ave Daniel,
....Je ne pouvais résister à la tentation de l'Evaluate ;-) Mais pffffff... pour tes formats de date à la mode amerloque ! ;-)
AV
"Daniel.M" a écrit dans le message news:
Salut Alain,
J'optimise. :-) Même si c'est peut-être moins clair!
Sub dma_2_4_Vendredis() Dim i As Long, j As Long
i = CLng([A1]): j = 1 ' Du Vendredi courant/prochain jusqu'à B1 For i = i - Weekday(i - 6) + 7 To [B1] Step 7 If 15 = Day(i) + Weekday(i - Day(i) + 2) _ Or 29 = Day(i) + Weekday(i - Day(i) + 2) Then Cells(j, "C") = i: j = j + 1 End If Next Range("C:C").NumberFormat = "ddd yyyy-mm-dd" End Sub
Salutations,
Daniel M.
Ave Daniel,
....Je ne pouvais résister à la tentation de l'Evaluate ;-)
Mais pffffff... pour tes formats de date à la mode amerloque !
;-)
AV
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message news:
OkXXSB6eDHA.3268@tk2msftngp13.phx.gbl...
Salut Alain,
J'optimise. :-)
Même si c'est peut-être moins clair!
Sub dma_2_4_Vendredis()
Dim i As Long, j As Long
i = CLng([A1]): j = 1
' Du Vendredi courant/prochain jusqu'à B1
For i = i - Weekday(i - 6) + 7 To [B1] Step 7
If 15 = Day(i) + Weekday(i - Day(i) + 2) _
Or 29 = Day(i) + Weekday(i - Day(i) + 2) Then
Cells(j, "C") = i: j = j + 1
End If
Next
Range("C:C").NumberFormat = "ddd yyyy-mm-dd"
End Sub
....Je ne pouvais résister à la tentation de l'Evaluate ;-) Mais pffffff... pour tes formats de date à la mode amerloque ! ;-)
AV
"Daniel.M" a écrit dans le message news:
Salut Alain,
J'optimise. :-) Même si c'est peut-être moins clair!
Sub dma_2_4_Vendredis() Dim i As Long, j As Long
i = CLng([A1]): j = 1 ' Du Vendredi courant/prochain jusqu'à B1 For i = i - Weekday(i - 6) + 7 To [B1] Step 7 If 15 = Day(i) + Weekday(i - Day(i) + 2) _ Or 29 = Day(i) + Weekday(i - Day(i) + 2) Then Cells(j, "C") = i: j = j + 1 End If Next Range("C:C").NumberFormat = "ddd yyyy-mm-dd" End Sub
Salutations,
Daniel M.
Daniel.M
Mais pffffff... pour tes formats de date à la mode amerloque ! ;-)
:-) Vrai. Donc, je corrige:
L'intérêt ici est de voir émerger le pattern où, en remplaçant le '+2' et le '-6' par d'autres nombres, on trouverait les Lundi (ou Mardi ou...).
De plus, en changeant le 15,29, pour 8,36 (par exemple) dans le Case, on trouverait les 1 et 5 Vendredi.
Sub dma_2_4_Vendredis() Dim i As Long, j As Long
i = CLng([A1]): j = 1 ' Du Vendredi courant/prochain jusqu'à B1 For i = i - Weekday(i - 6) + 7 To [B1] Step 7 Select Case Day(i) + Weekday(i - Day(i) + 2) Case 15, 29: Cells(j, "C") = i: j = j + 1 End Select Next Range("C:C").NumberFormat = "ddd yyyy/mm/dd" End Sub
Salutations,
Daniel M.
Mais pffffff... pour tes formats de date à la mode amerloque !
;-)
:-)
Vrai. Donc, je corrige:
L'intérêt ici est de voir émerger le pattern où, en remplaçant le '+2' et le
'-6' par d'autres nombres, on trouverait les Lundi (ou Mardi ou...).
De plus, en changeant le 15,29, pour 8,36 (par exemple) dans le Case, on
trouverait les 1 et 5 Vendredi.
Sub dma_2_4_Vendredis()
Dim i As Long, j As Long
i = CLng([A1]): j = 1
' Du Vendredi courant/prochain jusqu'à B1
For i = i - Weekday(i - 6) + 7 To [B1] Step 7
Select Case Day(i) + Weekday(i - Day(i) + 2)
Case 15, 29: Cells(j, "C") = i: j = j + 1
End Select
Next
Range("C:C").NumberFormat = "ddd yyyy/mm/dd"
End Sub
Mais pffffff... pour tes formats de date à la mode amerloque ! ;-)
:-) Vrai. Donc, je corrige:
L'intérêt ici est de voir émerger le pattern où, en remplaçant le '+2' et le '-6' par d'autres nombres, on trouverait les Lundi (ou Mardi ou...).
De plus, en changeant le 15,29, pour 8,36 (par exemple) dans le Case, on trouverait les 1 et 5 Vendredi.
Sub dma_2_4_Vendredis() Dim i As Long, j As Long
i = CLng([A1]): j = 1 ' Du Vendredi courant/prochain jusqu'à B1 For i = i - Weekday(i - 6) + 7 To [B1] Step 7 Select Case Day(i) + Weekday(i - Day(i) + 2) Case 15, 29: Cells(j, "C") = i: j = j + 1 End Select Next Range("C:C").NumberFormat = "ddd yyyy/mm/dd" End Sub