Sélectionner les lignes contenant le même mot

Bonjour à tous

Au travail nous faisons une extraction mensuelle de notre stock via un logiciel de GMAO.

L'extraction est un fichier Excel qu'il nous faut ensuite copier et coller dans un autre fichier Excel puis trier et mettre en forme pour l'envoyer à la comptabilité.

Je souhaiterais automatiser cela avec du code VBA car c'est assez fastidieux...

Je vous joins un extrait du fichier final ("Etat Stock").

Concrètement il faut :

- Copier le contenu du fichier Excel généré par la GMAO dans le fichier final "Etat Stock", onglet "Extraction" (facilement faisable à la main)

- Copier chaque ligne commençant par "DIV-..." (onglet "Extraction", colonne A) dans l'onglet "DIV" (à partir de la ligne 8), en omettant certaines colonnes (Quantité mini, Délai réapprovisionnement, ...).

- Répéter l'opération pour les autres onglets (ELEC, FLUID, ...).

J'ai essayé plusieurs bouts de codes trouvés sur le net mais ça n'a rien donné....

Merci d'avance pour votre aide 🙏

Hello,

Sachant que dans tes onglets DIV, ELEC, etc il n'y a pas le même format que dans l'extraction il va falloir être plus précis sur les colonnes à omettre et sur les colonnes transformées attendues ...

Toutes tes quantités dans "Extractions" on en fait quoi ? On les additionne toutes ensemble ? Pour le prix achat HT XPF c'est quoi, ca correspond à la colonne facturation ?

Merci d'avance

PS : PowerQuery est plus adapté que VBA et plus facilement maintenable

@+

Oui j'ai supprimé quelques colonnes pour ne pas divulguer d'informations personnelles et pour simplifier ma demande.

Disons qu'il faut copier chaque ligne commençant par "DIV-..." (onglet "Extraction", colonne A) dans l'onglet "DIV" (à partir de la ligne 8) :

- en omettant les colonnes (E, F, G, H) : "Qté mini", "Délai réappro. (Jrs)", "Facturation Famille".

- en prenant en compte la colonne ( I) "Qté : Stock Divers"

Normalement avec ce bout de formule je serais en mesure de comprendre la logique du code et de l'adapter au reste du document.

C'est juste du copier coller.

Le reste se fait avec des formules qui sont déjà réalisées.

Hello,

Si on passe par PowerQuery, vaut mieux avoir tous les tenants et aboutissants plutôt que de développer quelque chose qui n'est pas le reflet de ce que tu souhaites.

Tu ne peux pas envoyer tout le fichier global en anonymisant le fichier ? Genre mettre du texte dans les champs qui contiennent du texte, des fausses dates dans les champs dates et que des 1 dans les champs numériques ?

Il faudra juste les noms de colonne

@+

Bonjour à tous !

Une proposition "formule", à adapter, en A8 de la feuille "DIV" :

=CHOISIRCOLS(FILTRE(tExtract; ESTNUM(--(TROUVE(E3;tExtract[Code Prod.])=1)));1;2;3;4;9)

Sur chaque feuille, mettre en E3 (à adapter...), le code prod. à rechercher.

Un tableau structuré (tExtract) a été inséré dans la feuille "Extraction".

Hello JFL,

C'est fou je n'ai vraiment pas le réflexe d'utiliser les formules O365 ... Faudrait que je m'y mette un jour quand même

@+

Bonjour à tous de nouveau !

Hello JFL,

C'est fou je n'ai vraiment pas le réflexe d'utiliser les formules O365 ... Faudrait que je m'y mette un jour quand même

Osez..... osez que diable !

Bonjour,

Merci pour vos réponses 🙏

Une proposition "formule", à adapter, en A8 de la feuille "DIV" :

=CHOISIRCOLS(FILTRE(tExtract; ESTNUM(--(TROUVE(E3;tExtract[Code Prod.])=1)));1;2;3;4;9)
Sur chaque feuille, mettre en E3 (à adapter...), le code prod. à rechercher.

Un tableau structuré (tExtract) a été inséré dans la feuille "Extraction".

J'ai écrit "DIV" dans la case E3 et j'ai essayé de coller cette formule en A8 de la feuille DIV mais j'ai un message d'erreur qui me demande de modifier la formule au niveau "tExtract[Code".

Aussi je ne vois pas le tableau structuré (tExtract) inséré dans la feuille "Extraction".

Est-ce que vous pouvez m'éclairer un peu ?

Bonsoir à tous !

Pour insérer un tableau structuré dans le feuille "Extraction" :

  • Se placer sur la feuille "Extraction et ôter les filtres installés,
  • Se positionner sur une des cellules de la plage A1:N22 et, via le ruban, 'Insertion / Tableau,
  • Nommer le tableau structuré en tExtract.

Super, merci beaucoup, je n'aurais pas trouvé tout seul sans y passer des journées entières

J'ai pu réaliser un fichier Excel qui fait le taff.

Je le joins à ce message si ça peut aider quelqu'un par la suite :

Pour résumer j'ai utilisé la formule précédemment citée que j'ai adapté pour chaque page, exemple :

=CHOISIRCOLS(FILTRE(Extract_STOCK; ESTNUM(--(TROUVE("DIV";Extract_STOCK[Code Prod.])=1)));1;2;3;4;5;12)

J'ai dû la renseigner à deux reprises sur les feuilles (exemple feuille DIV : A8 et H8) car je ne savais pas comment sauter une colonne dans la feuille de destination (colonne "Total" avec la formule "E8*F8" par exemple).

Si vous avez une astuce je suis preneur

Aussi les cellules vides dans les feuilles Extraction sont recopiées avec des "0" dans les feuilles de destination.

Une idée pour ne pas inscrire des 0 ?

Et iI n'est plus possible de filtrer les données dans les feuilles de destination (DIV, ELEC, MVT DIV, ...) mais je laisse le service de comptabilité adapter le fichier au besoin.

Voilà c'est déjà une grande avancée comparé à avant.

Encore merci

Bonjour à tous !

Une proposition ? En A8 de la feuille "DIV" :

=LET(
t;FILTRE(Extract_STOCK; ESTNUM(--(TROUVE("DIV";Extract_STOCK[Code Prod.])=1)));
ASSEMB.H(CHOISIRCOLS(t;1;2;3;4;5;12);CHOISIRCOLS(t;5)*CHOISIRCOLS(t;12);CHOISIRCOLS(t;19;20))
)

Ne pas oublier de supprimer les formules précédemment insérées afin d'éviter l'erreur #PROPAGATION ! .....

Pour le filtre de la feuille : Se positionner en A7, puis Menu "Données / Filtrer". Vous devriez obtenir ceci :

image
Rechercher des sujets similaires à "selectionner lignes contenant meme mot"