Aide à modification d'un petit bout de macro

Dooz

XLDnaute Nouveau
Bonjour à Tous

Mon niveau n'est pas très elévé sous Visual Basic et je suis entrain de modifier la macro ci-dessous d'un planificateur de Congés.
If Choix = "CF" Then
Solde = Sheets("DROITS").Cells(Lig, 7)
période = Sheets("DROITS").Cells(Lig, 4)
'Vérification d'un CA adjacent
If VerifP <> "CA" And VerifS <> "CA" And VerifP <> "CF" And VerifS <> "CF" Then GoTo ErreurCA_Non_Adjacent
If période = 0 Then GoTo PériodeUtilisée
If Solde = 0 Then GoTo DroitsExpirés
If Solde < NbJours Then GoTo DroitsInsuffisants
'Vérification de la continuité des CF pour décompter une période
If VerifP <> "CF" And VerifS <> "CF" Then
Sheets("DROITS").Cells(Lig, 4) = période - 1
End If
If VerifP = "CF" And VerifS = "CF" Then
Sheets("DROITS").Cells(Lig, 4) = période + 1
End If
Sheets("DROITS").Cells(Lig, 7) = Solde - NbJours
GoTo Saisie
End If
La modification à apporter porte sur 2 conditions et non plus sur une seule.
En fait, si un CF est posé, la macro vérifie actuellement si un CA est adjacent.
Je voudrai apporter en supplément: la vérification d'un RTT.
Donc condition: 1 CA ou 1 RTT adjacent.
Je ne trouve pas la syntaxe qu'il faudrait.

D'avance merci.
 

skoobi

XLDnaute Barbatruc
Re : Aide à modification d'un petit bout de macro

Bonjour Dooz, bienvenue sur XLD,

je suppose que c'est cette condition à modifier:

Code:
If VerifP <> "CA" And VerifS <> "CA" And VerifP <> "CF" And VerifS <> "CF" Then

Ca ne correspond pas tout à fait à ce que tu dis...
Ecris textuellement ce que tu veux on traduira en VBA.
 

Dooz

XLDnaute Nouveau
Re : Aide à modification d'un petit bout de macro

Bonjour skoobi Merci

Effectivement c'est cette condition à modifier.

Mon classeur est partagé en 12 feuilles (Mois) + 1 feuille "Droits"
La formule donc vérifie la feuille du mois en cours + la feuille du mois suivant.
25 jours de Congés Annuels (CA) peuvent être positionné sur l'année
15 jours de Congés Feriés (CF)
10 jours de Congés (RTT)

Ma macro actuelle apporte la condition qu'un CA doit être adjacent au CF.

Depuis, les conditions de mon administrations ont changés et dorénavant nous avons la possibilité de poser des RTT mais avec également 1 CA adjacent
Ce qui m'oblige lorsque je désire mettre un RTT de le positionner avant le CA pour que ce dernier soit adjacent
Donc pour résumer: Si 1 CF ou 1 RTT est positionné, il faut qu'il soit accolé à au moins 1 CA déjà positionné.
En gros donc apporter à cette ligne la condition:
Si un RTT il faut qu'il y ait 1 CA ajacent ou 1 CF
Si 1 CF il faut qu'il y ait 1 CA ou 1 RTT

En espérant avoir été plus clair :)

Ci-joint la macro intégrale
 

Pièces jointes

  • Macro.zip
    1.6 KB · Affichages: 29
  • Macro.zip
    1.6 KB · Affichages: 30
  • Macro.zip
    1.6 KB · Affichages: 32
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Aide à modification d'un petit bout de macro

Re,

Si j'ai bien compris:

Code:
If VerifP <> "CA" And VerifS <> "CA" And VerifP <> "CF" And VerifS <> "CF" [COLOR=Blue][B]And VerifS <> "RTT"
 And VerifP <> "RTT"[/B][/COLOR] Then
Then
 

Dooz

XLDnaute Nouveau
Re : Aide à modification d'un petit bout de macro

Merci skoobi

C'était exactement cela. :)
J'étais pas très loin, mais à force de bidouiller dans tous les sens cette petite ligne, j'ai craqué.

Encore merci pour ta réactivité et ton efficacité

Amicalement
 

Discussions similaires

Statistiques des forums

Discussions
312 236
Messages
2 086 477
Membres
103 232
dernier inscrit
logan035