Bonjour à tous,
Tout d'abord, je suis novice sur le forum donc je m'excuse d'avance si ma question paraît stupide, mal formulée ou a déjà obtenu une réponse ailleurs. Je m'efforcerais de faire mieux la prochaine fois.
Voici mon problème :
Je cherche à identifier dans un tableau des identifiants de brevets, ces identifiants étant inscrits dans un autre tableau sur une autre feuille. Grâce à ce forum et à d'autres, j'ai pu trouver une formule matricielle qu fonctionne pour ce que je recherche. La voici : =(SOMME(ESTNUM(CHERCHE(SI(Feuil4!$B$2:$KB$2<>"";Feuil4!$B$2:$KB$2);Feuil7!C$2))*LIGNE(Feuil4!$B$2:$KB$2))>0)*1
Feuil4!$B$2:$KB$2 correspond à la plage dans laquelle je cherche mes identifiants (1 brevet pouvant avoir une multitude d'identifiants)
Feuil7!C$2 correspond à la cellule dans laquelle je recherche au moins un des identifiants inscrits dans la plage Feuil4!$B$2:$KB$2. Si un des identifiants est présent, la formule me renvoie 1, sinon 1.
Je répète cette action pour autant de brevets cités que j'ai.
Le problème est qu'elle est très longue à appliquer sur l'ensemble de mes données. Je dois appliquer cette formule pour chaque cellule d'un tableau qui comprends plus de 8000 colonnes et près de 2600 lignes. Je souhaiterais donc savoir s'il existe des moyens d'optimiser cette opération afin de gagner du temps, car pour l'instant je ne peux étirer la formule que sur 300 lignes et une dizaine de colonnes à chaque fois.
Je me demande donc si :
adapter ma formule sur VBA me permettrait de gagner du temps ?
il existe un moyen de simplifier cette formule ?
le fait de scinder mon tableau de donnée en deux tableaux distincts que je traiterais l'un à la suite de l'autre aiderait Excel à aller plus vite ?
Merci d'avance pour votre aide !
Tout d'abord, je suis novice sur le forum donc je m'excuse d'avance si ma question paraît stupide, mal formulée ou a déjà obtenu une réponse ailleurs. Je m'efforcerais de faire mieux la prochaine fois.
Voici mon problème :
Je cherche à identifier dans un tableau des identifiants de brevets, ces identifiants étant inscrits dans un autre tableau sur une autre feuille. Grâce à ce forum et à d'autres, j'ai pu trouver une formule matricielle qu fonctionne pour ce que je recherche. La voici : =(SOMME(ESTNUM(CHERCHE(SI(Feuil4!$B$2:$KB$2<>"";Feuil4!$B$2:$KB$2);Feuil7!C$2))*LIGNE(Feuil4!$B$2:$KB$2))>0)*1
Feuil4!$B$2:$KB$2 correspond à la plage dans laquelle je cherche mes identifiants (1 brevet pouvant avoir une multitude d'identifiants)
Feuil7!C$2 correspond à la cellule dans laquelle je recherche au moins un des identifiants inscrits dans la plage Feuil4!$B$2:$KB$2. Si un des identifiants est présent, la formule me renvoie 1, sinon 1.
Je répète cette action pour autant de brevets cités que j'ai.
Le problème est qu'elle est très longue à appliquer sur l'ensemble de mes données. Je dois appliquer cette formule pour chaque cellule d'un tableau qui comprends plus de 8000 colonnes et près de 2600 lignes. Je souhaiterais donc savoir s'il existe des moyens d'optimiser cette opération afin de gagner du temps, car pour l'instant je ne peux étirer la formule que sur 300 lignes et une dizaine de colonnes à chaque fois.
Je me demande donc si :
adapter ma formule sur VBA me permettrait de gagner du temps ?
il existe un moyen de simplifier cette formule ?
le fait de scinder mon tableau de donnée en deux tableaux distincts que je traiterais l'un à la suite de l'autre aiderait Excel à aller plus vite ?
Merci d'avance pour votre aide !