Recherche verticale + copier plusieur cellule
bonjour,
voila ce que j'aimerai pouvoir faire...
Dans une feuille A j'ai des 5 numéros à 11 chiffres (sur une même colonne) c'est 5 numéros correspondent à des options pour le client.
Dans une feuille B j'ai toute une nomenclature de produit (on va dire qu'il y a 10 options). Sur une ligne j'ai mon numéro a 11 chiffres et en dessous pleins de ligne qui me dit le matériel qui est appelé pour cette option (j'ai des infos sur plusieur colonne - numéro de l'article, description, quantité,...).
Mon souhait serait que sur une feuille C, je puisse avoir la nomenclature que pour les options choisies par le client (c'est a dire la même feuille que B mais seulement avec les options marquées sur la feuille donc 5 au lieu de 10 dans mon exemple).
Est possible et si oui comment ?
merci
Salut le forum
Tu n'as qu'à cliquer sur ce lien : Joindre un fichier pour que l'on puisse t'aider, et recopier l'adresse sur ta ficelle.
Ca va grandement nous aidez à te trouver une solution.
Mytå
sur la feuille "MNBR" ligne 21 à 60 j'ai des chiffres.
sur la feuille "nomenclautre 12-01-09" (c'est la nomenclature du produit en entier) on retrouve ces chiffres (sur des lignes bleues) et en dessous tout ce qui est appelé (des lignes blanches)
ce que j'aimerai c'est d'avoir sur une feuille X la nomenclature juste pour les numéro présent sur la feuille MNBR
voir l'exemple dans le fichier (dernier onglet)
fichier dispo ici :
Bonjour
Après avoir nommé Base, la plage
='Nomenclature 12-01-09'!$B$3:$J$5000
(Commande "Insertion" "Nom" "Définir")
Formule en C13 à incrémenter vers la droite et vers le bas
=INDEX(Base;EQUIV($A13;$A:$A;0);COLONNE())
Cordialement
bonjour,
j'ai pas compris la formule :
Formule en C13 à incrémenter vers la droite et vers le bas
=INDEX(Base;EQUIV($A13;$A:$A;0);COLONNE())
c'est a mettre dans quelle page ? dans une nouvelle feuille ?
autre question :
'Nomenclature 12-01-09'!$B$3:$J$5000
pourquoi aller jusque 5000 ? et pourquoi s'arreter a la colonne J alors qu'il y a des infos jusqu'à la R ?
cordialement
Bonjour
Je n'avais pas regardé tout le tableau
Commentaires dans le fichier
https://www.excel-pratique.com/~files/doc/SGBnXtest.xls
Cordialement
merci pour les infos par contre la ca copie bien les infos pour les "numéros de tete" présent sur la feuille MNBR, ce que je souhaiterais c'est c'est d'avoir sur une paga vierge, le résultat obtenu la + le contenu des "numéro de tête"
Dans la feuille MNBR j'ai le "numéro de tete" 57164651-051 (cellule A13)
dans la nomenclature (voir la feuille exemple) lorsqu'il retrouve ce meme code alors il me copie dans une nouvelle feuille tout ce que contient ce "numéro de tete" soit :
2 57164651-051 *** 01 1 BSS Null 21-MAR-05 21-MAR-05
3 25130001-000 *** 01 12 SPP No 16-MAR-05 16-MAR-05 10 57164733-PLN 3 12.000
3 57158807-001 *** 01 4 SSS No 16-MAR-05 16-MAR-05 10 57164733-PLN 2 4.000
4 05050716-002 *** M2 .01 SPR Null 15-APR-08 15-APR-08
3 57096997-005 *** 01 6 SPS No 14-JUL-06 14-JUL-06 10 1 G4633 57164731-PLN 2 6.000
3 18020252-004 *** 01 4 SPS No 20-JUN-06 20-JUN-06 10 1 G5282 57164733-PLN 1 4.000
(cellule A-J ligne 7-12 dans feuille exemple)
est ce possible?
Bonjour
Que fais-tu des références sur la Feuille MNBR qui ne sont pas dans la nomenclature?
A te lire
Cordialement
Bonjour
Pour aller plus vite, le Code suivant (améliorable?)à copier (coller) dans un module, insére une nouvelle feuille sur ton classeur, la nomme Extraction, et donne le résultat concernant les données de la Feuille MNBR
Sub Traiter()
' Macro enregistrée le 16/02/2009 par Amadéus
Sheets("MNBR").Select
Sheets.Add.Name = "Extraction"
Sheets("MNBR").Select
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Extraction").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(INDEX(Base,MATCH(RC2,'Nomenclature 12-01-09'!R3C2:R5000C2,0),COLUMN())),"""",INDEX(Base,MATCH(RC2,'Nomenclature 12-01-09'!R3C2:R5000C2,0),COLUMN()))"
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:A" & Range("B1").End(xlDown).Row), Type:=xlFillDefault
Range("A1").Select
Selection.Copy
Range("C1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("C1:T1"), Type:=xlFillDefault
Range("C1:T1").Select
Selection.AutoFill Destination:=Range("C1:T" & Range("B1").End(xlDown).Row), Type:=xlFillDefault
Range("A1").Select
End SubCordialement
alors pour les références MNBR qui ne sont pas dans la nomenclature, je m'en sers pas.
pour la macro, il y a un beug, si j'ajoute une feuille que je nomme exctration, quand je lance la macro il me dit impossible d'ajouter une page comportant le meme nom qu'une déjà présente.
j'ai fait le test sans la page, je lance la macro ca me créé une page exctraction avec dedans en cellule
A1 :
=SI(ESTNA(INDEX(Base;EQUIV($B1;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()));"";INDEX(Base;EQUIV($B1;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()))
B1 :Audit de traitement MNBR de test.
B2 : Export du 04-FEB-2009 08:30:04
Bonjour
ce que je souhaiterais c'est c'est d'avoir sur une paga vierge,
puis
pour la macro, il y a un beug, si j'ajoute une feuille que je nomme exctration, quand je lance la macro il me dit impossible d'ajouter une page comportant le meme nom qu'une déjà présente.
Il faut être plus précis dans tes demandes. Et aussi, lire les réponses.
le Code suivant (améliorable?)à copier (coller) dans un module, insére une nouvelle feuille sur ton classeur, la nomme Extraction, et donne le résultat concernant les données de la Feuille MNBR
C'est donc normal qu'il y ait un beug.
Cordialement
bonjour,
le Code suivant (améliorable?)à copier (coller) dans un module, insére une nouvelle feuille sur ton classeur, la nomme Extraction, et donne le résultat concernant les données de la Feuille MNBR
je n'avais pas compris que "insére une nouvelle feuille sur ton classeur, la nomme Extraction" se faisait par la macro, je pensais que je devais le faire moi même avant de lancer la macro
concernant la macro, je la lance ca me créé une page exctraction avec dedans en cellule
A1 :
=SI(ESTNA(INDEX(Base;EQUIV($B1;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()));"";INDEX(Base;EQUIV($B1;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()))
A2 :
=SI(ESTNA(INDEX(Base;EQUIV($B2;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()));"";INDEX(Base;EQUIV($B2;'Nomenclature 12-01-09'!$B$3:$B$5000;0);COLONNE()))
B1 :Audit de traitement MNBR de test.
B2 : Export du 04-FEB-2009 08:30:04
ce qui correspond aux valeurs A1 et A2 de la feuille MNR.
Concernant ma demande, j'aimerai que la macro lise la colonne A de la feuille MNBR, et la colonne "Item" dans la feuille "Nomenclature 12-01-09"
Si on retrouve la valeur d'une cellule A de la feuille MNBR dans la nomenclature, alors il me copie dans la feuille d'extraction (crée par la macro) cette ligne plus celle qui sont en dessous jusqu'a ce qu'il retombe sur un item dont la valeur dans la colonne "Lvl" ait la valeur 2.
En fait tous les chiffres de la feuille MNBR (ligne 21 à 61) sont des "lvl" 2. (ce qui correspond au niveau de tête) (niveau 3 et 4 c'est la composition du kit si on peut dire)
Ma demande est elle plus plus clair ?
merci pour votre aide.
Bonjour
Je pense que nous y sommes
Résumons et précisons
Quand sur la colonne A de la Feuille MNBR, on trouve une référence (Ex: 57164651-051) correspondant à une référence de la colonne Item (B) de la Feuille Nomenclature..., on repére en colonne A (LvI) de la Feuille Nomenclature..le No correspondant à cette référence (ici 2 à la ligne 37) et sur une autre Feuille, on extrait de la Feuille Nomenclature...toutes les lignes allant de la ligne 37 jusqu'à ce que en colonne A, on retouve le même no 2 dans la colonne Lvl.
Soit, dans l'exemple, on extrait de la ligne 37 à la ligne 42
Cela est parfaitement réalisable en VBA, mais, là, mes limites sont dépassées. Espérons un "VBA-ïste" qui ne sera pas rebuté par un téléchargement d' 1 Mo.
Cordialement