Bonjour,
Dans mon fichier de plannif,
j'ai une macro qui me permets de dupliquer une ligne et de changer la date (-1jrs sur la date dupliquée), de faire 1 division et une multiplication dans des colonnes.

Tout cela fonctionne très bien, cependant je souhaiterai que la date dupliquée prenne en compte les week-end et jours de fermeture de l'entreprise (feuille fermeture de mon fichier).

J'ai compris la fonction mais je n'arrive pas à l'appliquer dans cette macro (que je n'ai pas faite). Je suppose que ce doit être au niveau de cette ligne de commande
ActiveCell.FormulaR1C1 = "=R[1]C-1" 'modif du jours

En fouillant un peu, j'ai tenté d'intégrer cela, mais ça bloque sur Star date.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Dim StartDate As Date, Days As Long, Week As String, Holydays As Range
 
  StartDate = R[1]
  Days = 2
  Week = "0000001"
  Set Holydays = Range("Fermeture[Date]")
 
 ActiveCell.FormulaR1C1 = "=CDate(Application.WorkDay_Intl(StartDate, Days, Week, Holydays))" 'modif du jour

Pouvez-vous m'aider à l'intégrer SVP ?

Voici la macro
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub Test()
 
' Boucle 07HA Debut
 
    Range("A4").Select
    RechercheFamille = Cells.Find(what:="07HA", After:=ActiveCell, LookIn:=xlFormulas, lookat _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False, SearchFormat:=False).Activate
    nbOccurences = Application.CountIf(Range("B4:B3000"), "07HA")
 
    While nbOccurences > O
            Selection.Offset(1, 0).Select
            ActiveCell.EntireRow.Select
            Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
            Selection.FillDown 'Range(LC + 1).Select
            Selection.Offset(-1, 0).Select
            ActiveCell.FormulaR1C1 = "=R[1]C-1" 'modif du jours
            ActiveCell.Offset(0, 2).Select
            ActiveCell.FormulaR1C1 = "=RC[4]/RC[5]" 'formule nombre de barre pour l'of
            Selection.NumberFormat = "0.000"
            Selection.Offset(0, 5).Select 'déplacement Colonne +5 histo Range("H264").Select
            ActiveCell.FormulaR1C1 = "=R[1]C*2" 'nbre de pc par barre x2
            Selection.Offset(1, -6).Select 'Range("B265").Select
            ActiveCell.FormulaR1C1 = "3"
            Selection.Offset(1, 0).Select 'Range("B266").Select
            nbOccurences = nbOccurences - 1
    Wend
' Fin Boucle 07HA
End Sub

Je vous joins le fichier excel en question
Dev plannif.xlsm

Merci d'avance pour votre aide