A voir également:
- Excel : Reporter une cellule selon le résultat d'une autre
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
1 réponse
Utilisateur anonyme
16 sept. 2016 à 19:56
16 sept. 2016 à 19:56
Bonjour AnneC,
Je te propose cette solution : Fichier Excel 2007
À l'ouverture du fichier (qui contient 2 feuilles), tu seras
sur la 1ère feuille "CRG" (Compte Rendu Général).
Dessus, il y a seulement les données de ton exemple :
c'est donc la liste des tâches pour tous les employés.
Fais < Ctrl >< e > pour exécuter la macro Essai : tu dois entendre
un bip et rien ne se passe ; c'est normal, car la macro ne dois pas
être exécutée sur cette feuille mais sur la feuille d'un employé.
-------------------------------------------
Donc va sur la 2ème feuille "EMP" (Employé) ; tu verras seulement :
Employé
X
Fais < Ctrl >< e > pour avoir la liste des tâches de l'employé X.
Pour consultation et / ou impression (pour toi et pour diffuser
à l'employé concerné).
-------------------------------------------
Pour les autres employés, il te suffirait d'avoir une autre feuille
identique à la feuille "EMP", mais je te déconseille de le faire,
car c'est beaucoup plus simple avec la seule feuille "EMP" :
Va en B3, et entre Y à la place de X ; fais < Ctrl >< e > :
liste des tâches de l'employé Y.
Va en B3, et entre Z à la place de Y ; fais < Ctrl >< e > :
liste des tâches de l'employé Z.
À chaque fois : à consulter / imprimer (et diffuser).
-------------------------------------------
Fais < Alt >< F11 > pour aller sur "Microsoft Visual Basic"
La macro Essai() est dans Module1 et utilise le "filtre avancé"
(que tu connais sous le nom de "filtre élaboré").
Si moins de 256 employés, tu peux remplacer Dim FX As Integer
par Dim FX As Byte ; surtout si finalement, tu suis mon conseil :
utiliser seulement les 2 feuilles déjà présentes, sans en ajouter
une pour chaque employé.
Sur l'avant-dernière ligne, cette instruction doit effacer tous les
résultats précédents : [B5:C1000].ClearContents
Ça fait déjà beaucoup de tâches par employé, mais si tu as un petit
tempérament d'esclavagiste, et que tu veux attribuer 2000 tâches
à chaque employé, mets : [B5:C2000].ClearContents
Mais je me dégage de toute responsabilité s'ils râlent et se mettent
en grève ! 😉 Bon, en fait, tu auras sans doute remarqué que c'est
quand même un peu moins puisque la 1ère tâche est en ligne 6.
-------------------------------------------
Dis-moi ce que tu en penses et si ça te convient.
Si ton problème est réglé, merci d'aller en haut de page
pour cliquer sur « Marquer comme résolu ».
Cordialement. 😊
Je te propose cette solution : Fichier Excel 2007
À l'ouverture du fichier (qui contient 2 feuilles), tu seras
sur la 1ère feuille "CRG" (Compte Rendu Général).
Dessus, il y a seulement les données de ton exemple :
c'est donc la liste des tâches pour tous les employés.
Fais < Ctrl >< e > pour exécuter la macro Essai : tu dois entendre
un bip et rien ne se passe ; c'est normal, car la macro ne dois pas
être exécutée sur cette feuille mais sur la feuille d'un employé.
-------------------------------------------
Donc va sur la 2ème feuille "EMP" (Employé) ; tu verras seulement :
Employé
X
Fais < Ctrl >< e > pour avoir la liste des tâches de l'employé X.
Pour consultation et / ou impression (pour toi et pour diffuser
à l'employé concerné).
-------------------------------------------
Pour les autres employés, il te suffirait d'avoir une autre feuille
identique à la feuille "EMP", mais je te déconseille de le faire,
car c'est beaucoup plus simple avec la seule feuille "EMP" :
Va en B3, et entre Y à la place de X ; fais < Ctrl >< e > :
liste des tâches de l'employé Y.
Va en B3, et entre Z à la place de Y ; fais < Ctrl >< e > :
liste des tâches de l'employé Z.
À chaque fois : à consulter / imprimer (et diffuser).
-------------------------------------------
Fais < Alt >< F11 > pour aller sur "Microsoft Visual Basic"
La macro Essai() est dans Module1 et utilise le "filtre avancé"
(que tu connais sous le nom de "filtre élaboré").
Si moins de 256 employés, tu peux remplacer Dim FX As Integer
par Dim FX As Byte ; surtout si finalement, tu suis mon conseil :
utiliser seulement les 2 feuilles déjà présentes, sans en ajouter
une pour chaque employé.
Sur l'avant-dernière ligne, cette instruction doit effacer tous les
résultats précédents : [B5:C1000].ClearContents
Ça fait déjà beaucoup de tâches par employé, mais si tu as un petit
tempérament d'esclavagiste, et que tu veux attribuer 2000 tâches
à chaque employé, mets : [B5:C2000].ClearContents
Mais je me dégage de toute responsabilité s'ils râlent et se mettent
en grève ! 😉 Bon, en fait, tu auras sans doute remarqué que c'est
quand même un peu moins puisque la 1ère tâche est en ligne 6.
-------------------------------------------
Dis-moi ce que tu en penses et si ça te convient.
Si ton problème est réglé, merci d'aller en haut de page
pour cliquer sur « Marquer comme résolu ».
Cordialement. 😊