Recherche formule Excel

Résolu/Fermé
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 - 20 févr. 2022 à 17:45
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 - 31 janv. 2023 à 00:08
Bonjour,



Configuration: Windows / Edge 98.0.1108.55




J'ai besoin d'aide pour une formule.
Le premier onglet se nomme TABLES sur lequel les données progresses constamment. La première colonne contient des noms d'employés.
Les 52 colonnes suivantes contiennent un nombre d'heures travaillées par semaine pour lesquels ces données sont entrer manuellement.

Les autres onglets (selon le nombre de noms des employés a la colonne A du premier onglet), seront nommé selon le nom de chaque employé.

Donc ma demande est : a la colonne C de chaque onglet, d'afficher la valeur correspondante au nom de l'employé pour chaque employé pour le nombre d'heures par semaine.

Je mets le fichier pour bien voir ma demande.

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



Merci
A voir également:

46 réponses

Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
20 févr. 2022 à 21:31
Re,

ça venait de l'identification du nom de l'onglet essye avec cette formule dans chaque cellule C3

=INDEX(TABLES!$A$3:$BB$50;EQUIV(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;20);TABLES!$A$3:$A$50;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;TABLES!$A$3:$BB$3;0)) 

1
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 22:32
Bonjour Mike,

Merci ca fonctionne super bien. Juste un petit bug encore, J'ai des noms d'employés qui dépasse 20 caractères et la formule ne fonctionne pas. Je vois bien dans ta formule qu'il y as le chiffre 20 a mi-chemin, mais si je mets 25 par exemple , ca ne fonctionne pas. Y a t-il une limite de caractères pour le nom d'un onglet

Merci
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
Modifié le 20 févr. 2022 à 22:54
Re,

Oui c'est tout a fait ça, si tu as assez de 30 caractères il suffit de remplacer le 20 par 30 ou plus

=INDEX(TABLES!$A$3:$BB$50;EQUIV(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;30);TABLES!$A$3:$A$50;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;TABLES!$A$3:$BB$3;0))


Par contre après il faut que le nom soit exactement orthographié dans l'onglet TABLES, si tu as une erreur c'est qu'il y une erreur à ce niveau, souvent un espace qui nous échappe, le mieux est de faire un COPIER/COLLER du nom de l'onglet dans la colonne NOMS ou inversement

1
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
20 févr. 2022 à 23:10
Re,

Je décroche pour la soirée, si ton problème est réglé, passe le statut de la discussion en résolu, sinon demain il fera jour.
1
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6 > Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024
21 févr. 2022 à 00:22
Merci Mike, c'est super
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
Modifié le 20 févr. 2022 à 19:17
Bonsoir,

En C3 de chaque onglet colle cette formule que tu incrémenteras vers le bas

=INDEX(TABLES!$A$3:$P$50;EQUIV(STXT(CELLULE("nomfichier");TROUVE("]";CELLULE("nomfichier"))+1;20);TABLES!$A$3:$A$50;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;TABLES!$A$3:$BB$3;0)) 



Tu peux écourter la formule en nommant tes plages de l'onglet TABLES, exemple la tableau A3:BB50 nommée Tablo, la plage des noms A3:A50 nommée Nom et la plage des dates A3:BB3 nommée Date ce qui te permettra de modifier dans le gestionnaire des noms tes plages et de ce fait toutes tes formules s'actualiseront

=INDEX(Tablo;EQUIV(STXT(CELLULE("nomfichier");TROUVE("]";CELLULE("nomfichier"))+1;20);Nom;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;Date;0))

0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
Modifié le 20 févr. 2022 à 19:24
Bonjour Mike,

Merci pour le retour rapide,

J'obtiens une date et non pas la valeur souhaitée.

Ce que je cherche est un chiffre et non pas une date
Regarde mon exemple, j'ai mis des couleurs sur les cellules sur les onglets, chaque couleur représente ma demande

Merci
0
DjiDji59430 Messages postés 4062 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 9 juin 2024 651
20 févr. 2022 à 19:27
Bonjour à tous,

https://www.cjoint.com/c/LBusAEKQFaY
avec transpose()

Crdlmt
0
DjiDji59430 Messages postés 4062 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 9 juin 2024 651
20 févr. 2022 à 19:28
Ça serait bien également que tu indiques ta version d'Excel !

Crdlmt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 403
20 févr. 2022 à 19:27
Bonsoir
votre fichier en retour, avec quelques explications en feuille TABLES
revenez si soucis
https://www.cjoint.com/c/LBusAjFtfYc
crdlmnt
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
20 févr. 2022 à 19:34
Re,

Non la formule donne la bonne réponse, sur le premier onglet tu as la formule normale et sur les autres onglets la formule avec les plages nommées

https://www.cjoint.com/c/LBusFMpVOrF
0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 19:41
Bonjour Mike,

Wow ca semble fonctionner. Je vais compléter mes données et voir si tout va bien

Merci
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
20 févr. 2022 à 19:45
Re,

prends ce fichier, je crois que je ne t'ai pas retourné le bon
https://www.cjoint.com/c/LBusSMYlbgF
0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 19:50
Bonjour Mike,

Si je glisse la formule par exemple a l'onglet ANDERSON de C3 vers le bas, pourquoi j'obtiens #REF! a la cellule C17

Merci
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
20 févr. 2022 à 19:58
Re,

quelle formule as tu retenue, celle avec les plages nommées ou avec formule classique !

es ce que dans les autres onglets la formule fonctionne !

si tu as recopié la formule classique as tu respecté le symbole DOLLAR $

si ta matrice est exemple A3;R20 il est impératif que la liste des noms soit du même nombre de ligne A3:A30 comme pour le nombre de colonne, si ta matrice va jusqu'à R il est impératif que la liste des dates soit A3:R3
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
Modifié le 20 févr. 2022 à 20:12
J'ai trouvé, l'erreur vient de la formule classique
il y a une erreur au début, tu as =INDEX(TABLES!$A$3:$P$50; alors qu'il faut =INDEX(TABLES!$A$3:$BB$50; pour avoir la même longueur des plages

la formule correcte est
=INDEX(TABLES!$A$3:$BB$50;EQUIV(STXT(CELLULE("nomfichier");TROUVE("]";CELLULE("nomfichier"))+1;20);TABLES!$A$3:$A$50;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;TABLES!$A$3:$BB$3;0))
0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 20:14
Bonjour Mike,

est-ce que je dois mettre cette formule a la cellule C3 de chaque onglet ?
0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 20:30
Bonjour Mike,

Si je mets la même formule en C3 de chaque onglet, j'obtiens toujours la même valeur sur tous les onglets

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

Merci
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
Modifié le 20 févr. 2022 à 20:46
Re,

Dans ton premier onglet tu n'as pas modifié la première formule comme je t'ai expliqué sur le post 11

alors pour éviter les interférences efface la formule En C3 et colle celle ci dessous

=INDEX(TABLES!$A$3:$BB$50;EQUIV(STXT(CELLULE("nomfichier");TROUVE("]";CELLULE("nomfichier"))+1;20);TABLES!$A$3:$A$50;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;TABLES!$A$3:$BB$3;0))


et idem dans chaque onglet efface C3 et colle la même formule

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

0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
20 févr. 2022 à 21:16
Bonjour Mike,

Oui mais si je repars a zéro et que j'efface toutes les formules des colonnes c de tous les onglets .
Je prends ta dernière formule et je mets a C3 du premier onglet et ca fonctionne aussi.

Ensuite au deuxième onglet, a C3 je colle la même formule, je me retrouve avec les mêmes données aux 2 onglets.

Merci
0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
4 janv. 2023 à 19:19

Bonjour Mike,

J'espère que tu vas bien, est-ce que vous pourriez m'aider encore une fois pour le fichier que vous m'aviez adapté en février 2022. J'ai un petit soucis avec celui-ci.

Merci et bonne journée

0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
4 janv. 2023 à 20:39

Bonjour,

Explique déjà ce que tu veux faire ou modifier sur ce fichier, 


0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
4 janv. 2023 à 23:15

Re,

Je me suis permis de supprimer ton post contenant des fichiers hautement confidentiels.

Regarde en haut à droite de la discussion tu verras ton pseudo avec un petit rond rouge, clic dessus et Boite de réception je t'ai laissé un message à ce sujet.

Cordialement


0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
5 janv. 2023 à 09:47

Re,

je me souviens de ton fichier, déjà le bouton IMPORT lié au code Sub QC_MR() ne veut rien dire, il prépare une copie sur une plage "A8:BC35" alors que ton tableau s'arrête à la colonne V, par contre il y a une montagne de ligne, puis il désactive le mode COPY pour recommencer, colle plusieurs fois les données pour finalement filtrer les données que sur une partie de la matrice.

que veux tu faire exactement avec ce bouton IMPORT, si je comprends ta demande, certainement copier toute la plage pour prendre en compte le rajout d'un nom en fin de tableau.

pour la deuxième question, certainement que oui, il suffit avec le bouton IMPORT des fichiers 2023 de coller les données mais çà a voir après avoir corrigé cette macro Sub QC_MR()


0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
5 janv. 2023 à 14:07

Re,

Seul les fichiers et données confidentielles ne doivent transiter en clair, mais les discussions doivent rester ouvertes.

pour revenir à ton problème et avant de partir tête baissée, ton problème ne concerne que le fichier C2022

sous réserve d'avoir bien compris, tu veux ajouter un onglet ou supprimé et donc sur l'onglet TABLES tu veux que la liste des noms colonne A s'actualise et les données se filtrent en ordre croissant, c'est bien cela

je ne me souviens pas, les données de chaque agent en fin de chaque de semaine comment sont t'elles transposées sur l'onglet TABLES manuellement !

exemple pour la première ligne BENOIT il y a deux lignes, es ce nécessaire !

semaine du 3 décembre sur la 1ére ligne 3,00 et sur la 2éme 48,00 explique ce fonctionnement


0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
5 janv. 2023 à 14:16

Oui mon problème n'est que sur le fichier C2022. Les 2 autres sont correct.

Oui ajouter ou supprimer un onglet qui correspondent aux noms des employés. Oui je veux que la liste a la colonne A s'actualise et soit en ordre alphabétique aussi.  

Oui les données sur chaque employé dans leur onglet correspondant sont entrées manuellement (Colonne D sur chaque onglet des employés)

Oui il y a des noms qui apparaissent sur 2 lignes car ces employés ont des données correspondantes sur les 2 autres classeurs. De combiner ces 2 lignes en une seule a l'onglet TABLES serait-il possible

Merci,

0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
6 janv. 2023 à 19:30

Re,

En attendant ton retour, j'ai regardé tes formules et ce que je te proposais ne peut fonctionner et c'est normal d'avoir de #N/A ou des cellules vides parce qu'on est en circulaire, un peu comme le serpent qui se mord la queue 

dans les colonne C de chaque agent tu as cette formule

=SI(NB.SI(Noms;$B$1)=1;INDEX(Tablo;EQUIV($B$1;Noms;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;Dates;0));INDEX(Tablo;EQUIV($B$1;Noms;0);EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;Dates;0))+INDEX(Tablo;EQUIV($B$1;Noms;0)+1;EQUIV((TEXTE(A3+6;"j mmmm")&" "&B$2)*1;Dates;0)))

qui fait référence au tableau onglet TABLES parce qu'apparemment les heures travaillées de chaque agent colonne C proviennent du tableau TABLES.

il faut donc revoir tout le code VBA pour simplement afficher dans TABLES que les onglets visibles 

enfin c'est ce que je comprends


0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
6 janv. 2023 à 20:27

Bonjour Mike,

Je comprends mieux avec ton explication maintenant, alors le VBA doit être revu aussi.

Oui ce que tu comprends est bon aussi

Merci,

0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 082
Modifié le 7 janv. 2023 à 17:33

Re,

teste ce fichier voir ce qui est possible de faire, on verra plus tard pour l'adapter à ta sauce.

Si tu clic sur le bouton Masquer/Afficher

une boite de dialogue te propose de masquer ou afficher l'onglet et la ligne dans l'onglet TABLES

dans le cas ou tu rajouterais un onglet, une boite de dialogue te proposera de créer automatiquement la ligne dans l'onglet TABLES

dans le cas on un onglet est masqué et que tu crées une ligne au nom de cet onglet, il y a déséquilibre vu que, l'onglet est masquée et la ligne visible, il suffit de faire deux cycles Masquer/Afficher pour qu'ils se mettent en harmonie

le bouton filtre les données classe en ordre croissant le tableau

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


0
faisdlair Messages postés 171 Date d'inscription vendredi 19 janvier 2018 Statut Membre Dernière intervention 31 décembre 2023 6
7 janv. 2023 à 19:22

Bonjour Mike,

Je viens de tester et ca marche bien, j'ai crée un nouvel onglet et je l'ai nommé ALAIN. Ensuite avec le bouton MASQUE...., ca m'a permit d'ajouter une ligne. Et le bouton filtre a mis en ordre alphabétique.


Ce que je comprends, c'est que tu repars de zéro. Je te laisse continuer

Merci et bon Samedi

0