Formule pour toute la colonne, macro ?

Résolu
xGunner Messages postés 30 Statut Membre -  
xGunner Messages postés 30 Statut Membre -
Bonjour,

Je souhaiterai appliquer une formule à toute une colonnes (sauf l'entête), je sais qu'il existe la recopie vers le bas, mais sur 6 colonnes contenant une fonction RECHERCHEV, je me retrouve avec un fichier de plus de 100Mo qui malgré un pc récent (i5 7500 + 8 Go) met du temps à s'ouvrir

(Mon fichier actuel contient deux feuilles, la première est une base de données, la seconde contient un tableau rempli de RECHERCHEV)

Comment pourrai-je réduire le nombre de formule pour réduire la taille de mon fichier ? Avec une macro ?
Je me suis dit qu'une macro qui implémente la formule que s'il y a une données à rechercher ?

Je ne sais pas vers quoi me tourner et ne suis pas assez expérimenté pour créer une macro comme celle-ci

Merci d'avance pour votre aide

2 réponses

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Bonjour,

    Avec aussi peu d'information la réponse restera laconique.
    Des pistes à explorer :
    - les fonctions BD
    - un filtre élaboré
    - un TCD
    - une combinaison des trois.
    1
    1. xGunner Messages postés 30 Statut Membre
       
      Oui c'est vrai, j'ai fait une copie sans les données de la base mais tout y est (formule) : https://send.firefox.com/download/1514617e84/#WyI1-BAALVxLnEsbnmd54w
      Je vais chercher de mon côté avec les infos que tu m'a déjà donné merci
      0
    2. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
       
      Beaucoup plus simple : Utiliser un tableau structuré, pas besoin de remplir une feuille de formules inutiles, les formules se recopient automatiquement sur chaque nouvelle ligne utilisée.
      Voir : https://fauconnier.developpez.com/tutoriels/tableaux-structures/
      0
  2. xGunner Messages postés 30 Statut Membre
     
    J'ai trouvé mon bonheur :
    Fonction INDEX + EQUIV au lieu de RECHERCHEV en utilisant un tableau qui permet la recopie de la formule sur toute les ligne suivante non nulle
    =SI(ESTVIDE(A2);"";INDEX(Tableau1;EQUIV([@[Code EAN à rechercher]];Tableau1[REF_CODE_BARRE];0);2))
    0