XL 2016 Base de données : macro Youki corrigée par pierrejean

Rousseau Benoit

XLDnaute Nouveau
Bonjour,

je reviens vers vous notamment vers Pierrejean pour une extension de ma base de donnée.
J'ai crée un 2eme fichier dont l'objectif est de suivre des projets en utilisant les données du 1er.
A ce titre j'ai tenté d'adapté le fichier corrigé par pierrejean en avril dans le fil : "base de donnée : macro youki".
Voici mon pb précisément :
Je n'arrive pas à faire fonctionner le vba pour que à partir de l'onglet DAP , le code crée un onglet/projet donc par ligne sur la base de l'onglet "modele".
J'ai joint le fichier xls concerné qui s'appelle "exemple 2". Ce fichier est lié à exemple 1 que j'ai également joint. Dans ce fichier exemple 1 une vba analogue fonctionne parfaitement grâce à pierrejean .
En lançant la vba depuis exemple 2/feuille DAP j'ai le message suivant : erreur d'execution '1004' et en lançant le déboguage c'est la ligne cel.Formula = Replace(cel.Formula, Right(cel.Formula, 2), r.Row & ")")
Est-ce que quelqu'un est prêt à m'aider?
Merci d'avance
 

Pièces jointes

  • exemple 1.xlsm
    135.3 KB · Affichages: 6
  • exemple 2.xlsm
    642.6 KB · Affichages: 12

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, Benoit

Benoit
J'ai ouvert ton classeur exemple2.xlsm qui pédale dans la semoule et a fini par planter mon Excel.
Par conséquent, difficile de faire quoique ce soit dans celui-ci.
Si je le réouvre, je suis obligé de faire CTRL+ALT+SUPPR pour fermer Excel.
 

Staple1600

XLDnaute Barbatruc
Re

Je peux l'ouvrir mais ensuite Excel si fige (même quand je vais dans VBA, j'ai toute les peines du monde pour retourner sur les feuilles Excel.
Elle est censé faire quoi cette ligne de code exactement?
cel.Formula = Replace(cel.Formula, Right(cel.Formula, 2), r.Row & ")")
 

Rousseau Benoit

XLDnaute Nouveau
J'ai récupéré le vba sur une macro développé par Youki pui corrigé par Pierrejean. L'objectif global est de créer autant de feuille qu'il ya de lignes dans DAP selon l'onglet modèle.
Je vous précise que je ne suis pas informaticien et que j'ai une compréhension très limite du langage vba

cordialement

Benoit
 

Staple1600

XLDnaute Barbatruc
Re

Benoit
01_Benoit.jpg

Essaies de joindre une copie ou tu auras remplacer les formules par leur valeurs.
(Donc Copier/Collage Valeurs seules)
Normalement, je pourrais alors ouvrir le classeur et aller lire le code VBA (sans qu'Excel ne plante)
 

Rousseau Benoit

XLDnaute Nouveau
Bonjour,

J'ai compris! J'avais laissé trainé des liens qui ne trouvé plus...
J'ai rompu en plus la liaison vers exemple 1. J'ai laissé les formules su exemple 2 qui devient exemple 3 et qui est en PJ. Sur mon ordi, il s'ouvre instantanément. J'ai laiss"é des formules pour voir s'il y avait des possibilités pour alléger. Notamment, la formule de la colonne GG de DAP est énorme et doit manger pas mal de ressource : =SI(NB.SI(AW4:BC4;"x")=0;"Pas de compétence 1";SI(AD4="";"Equipe compétente pour la DAP";SI(NB.SI(BD4:BJ4;"x")=0;"Pas de compétence 2";SI(AE4="";"Equipe compétente pour la DAP";SI(NB.SI(BK4:BQ4;"x")=0;"Pas de compétence 3";SI(AF4="";"Equipe compétente pour la DAP";SI(NB.SI(BR4:BX4;"x")=0;"Pas de compétence 4";SI(AG4="";"Equipe compétente pour la DAP";SI(NB.SI(BY4:CE4;"x")=0;"Pas de compétence 5";SI(AH4="";"Equipe compétente pour la DAP";SI(NB.SI(CF4:CL4;"x")=0;"Pas de compétence 6";SI(AI4="";"Equipe compétente pour la DAP";SI(NB.SI(CM4:CS4;"x")=0;"Pas de compétence 7";SI(AJ4="";"Equipe compétente pour la DAP";SI(NB.SI(CT4:CZ4;"x")=0;"Pas de compétence 8";SI(AK4="";"Equipe compétente pour la DAP";SI(NB.SI(DA4:DG4;"x")=0;"Pas de compétence 9";SI(AL4="";"Equipe compétente pour la DAP";SI(NB.SI(DH4:DN4;"x")=0;"Pas de compétence 10";SI(AM4="";"Equipe compétente pour la DAP";SI(NB.SI(DO4:DU4;"x")=0;"Pas de compétence 11";SI(AN4="";"Equipe compétente pour la DAP";SI(NB.SI(DV4:EB4;"x")=0;"Pas de compétence 12";SI(AO4="";"Equipe compétente pour la DAP";SI(NB.SI(EC4:EI4;"x")=0;"Pas de compétence 13";SI(AP4="";"Equipe compétente pour la DAP";SI(NB.SI(EJ4:EP4;"x")=0;"Pas de compétence 14";SI(AQ4="";"Equipe compétente pour la DAP";SI(NB.SI(EQ4:EW4;"x")=0;"Pas de compétence 15";SI(AR4="";"Equipe compétente pour la DAP";SI(NB.SI(EX4:FD4;"x")=0;"Pas de compétence 16";SI(AS4="";"Equipe compétente pour la DAP";SI(NB.SI(FE4:FK4;"x")=0;"Pas de compétence 17";SI(AT4="";"Equipe compétente pour la DAP";SI(NB.SI(FL4:FR4;"x")=0;"Pas de compétence 18";SI(AU4="";"Equipe compétente pour la DAP";SI(NB.SI(FS4:FY4;"x")=0;"Pas de compétence 19";SI(AV4="";"Equipe compétente pour la DAP";SI(NB.SI(FZ4:GF4;"x")=0;"Pas de compétence 20";"Equipe compétente pour la DAP")))))))))))))))))))))))))))))))))))))))
Cordialement
Benoit
PS : je viens de voir un tuto sur recherchX. Ca à l'air génial. Est ce que cette fonction est maintenant dispos sur xls 2016? Cela me permettrai d’alléger le tableau....
 

Pièces jointes

  • exemple 3.xlsm
    110.7 KB · Affichages: 7

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, Benoit

Benoit
Concernant RECHERCHEX
Bonsoir le fil,

=>ediArthur
Pour infos
Remarque : 28 août 2019 :
XLOOKUP est actuellement une version bêta, qui est disponible uniquement pour les parties du programme Office Insider pour le moment.
Nous allons continuer à l’optimiser au cours des prochains mois.
Lorsque XLOOKUP est prêt, nous le publierons pour tous les participants au programme Office Insider et les abonnés office 365.

Donc logiquement, tu devrais pouvoir l'utiliser ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 112
Messages
2 085 411
Membres
102 885
dernier inscrit
AISSOU