Comment obliger les salarié à remplir certaine données

Résolu
csc92 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
csc92 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai fait une feuille de suivi des jours travaillés pour les salariés cadre au forfait jour.

Et je souhaiterais savoir comment faire pour obliger les salariés à remplir les trois listes déroulantes du bilan mensuel en bas de la page.

De plus s'il remplissent par non ils sont obligés de mettre le motif juste en dessous dans la case prévu à cet effet.

Si ces deux conditions ne sont pas respectées alors ils ne peuvent pas imprimer la page.

Cela est-il possible?

Je vous joins le fichier concerné

https://www.cjoint.com/c/GJEqHrieRXM

Merci d'avance à ceux qui pourront m'aider.
A voir également:

2 réponses

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

à mettre dans thisworkbook :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Const msg  As String = "Impression annulée, bilan mensuel incomplet dans "
    Dim feuille As Worksheet
    
    For Each feuille In ThisWorkbook.Windows(1).SelectedSheets
        With feuille
            If .[A44] = "Bilan mensuel à remplir par le salarié :" Then
                If Application.CountA(Union(.[D47], .[A51], .[A55])) <> 3 Then
                    Cancel = True
                    MsgBox msg & feuille.Name
                    Exit Sub
                Else
                    If (LCase(.[D47] = "non") And .[B48] = "") Or (LCase(.[D51] = "non") And .[B52] = "") Or (LCase(.[D55] = "non") And .[B56] = "") Then
                        Cancel = True
                        MsgBox msg & feuille.Name
                        Exit Sub
                    End If
                End If
            End If
        End With
    Next feuille
End Sub 


J'ai prévu le contrôle de toutes les feuilles sélectionnées en cas de sélection multiple.
Par contre si le choix est imprimer tout le classeur ça sortira. J'ai supposé qu'il pouvait y avoir des feuilles prêtes d'avance et par conséquent non remplies.
Si besoin complète en testant toutes les feuilles.
eric
1
csc92 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour Eriiic,

Merci pour ta réponse rapide.

Mais je ne sait pas ou mettre cela.
Peux-tu m'expliquer stp.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Alt+F11 pour aller dans VBE.
Double-clic dans ThisWorkbook de ton projet et y coller le code.
eric
0
csc92 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   > eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention  
 
Super merci beaucoup mon problème est résolu
0
csc92 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   > eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention  
 
Re bonjour,

Au final je me rend compte que j'ai toujours un problème.

En effet si le salarié ne renseigne pas toutes les questions il peut quand même imprimer.
Je souhaiterais qu'il soit obligé de dire oui ou non dans chacune des questions (et si non obligé de mettre le motifs)

Actuellement s'il en rempli 1 ou 2 il peut imprimer alors qu'il doit être obligé de remplir les 3.

Merci
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Ah oui. Un oubli de modification suite à un copié-collé.
Remplace :
If Application.CountA(Union(.[D47], .[A51], .[A55])) <> 3 Then

par :
If Application.CountA(Range("D47,D51,D55")) <> 3 Then

qui est sur les bonnes cellules.
eric
0
Raymond PENTIER Messages postés 58989 Date d'inscription   Statut Contributeur Dernière intervention   17 353
 
Par expérience, je peux te garantir que la méthode de loin la plus efficace est de ne pas leur verser leur salaire tant que la fiche n'est pas correctement remplie : C'est radical ! Au bout de 2 mois de ce régime, les documents arrivent dans les délais, remplis, commentés et signés ...
0