Copier une plage en fonction de la valeur d'une cellule
lucieaup
-
luieaup -
luieaup -
Bonjour à tous,
J'ai un fichier excel simple avec deux feuilles, une de saisie pour chaque nouveau client et une qui fait base de donnée. J'aimerai qu'à chaque fois qu'un produit est saisi via la liste déroulante en F8 sur la première feuille, cela me remplisse le tableau des composants avec les composants de ce produit (qui sont détaillés dans la feuille 2). J'ai essayé plusieurs code plus ou moins élaborés mais ca ne fonctionne pas. J'ai commencé avec des si et je voulais le remplacer par un code gééral mais ca ne marche pas :
DU coup j'ai aussi essayé ca mais ca ne marche toujours pas :
Est ce que quelqu'un pourrait m'aider?
Merci beaucoup
J'ai un fichier excel simple avec deux feuilles, une de saisie pour chaque nouveau client et une qui fait base de donnée. J'aimerai qu'à chaque fois qu'un produit est saisi via la liste déroulante en F8 sur la première feuille, cela me remplisse le tableau des composants avec les composants de ce produit (qui sont détaillés dans la feuille 2). J'ai essayé plusieurs code plus ou moins élaborés mais ca ne fonctionne pas. J'ai commencé avec des si et je voulais le remplacer par un code gééral mais ca ne marche pas :
If Sheets("Fiche Fabrication").Range("F8").Value = Sheets("asséchants").Range("H2").Value Then
Range("H3").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Fiche Fabrication").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End If
DU coup j'ai aussi essayé ca mais ca ne marche toujours pas :
Sub test()
Dim c As Range
Dim a As Integer
Dim b As Integer
With Sheets("Sheet1")
a = 10
End With
For Each c In Range(Cells(1, 2), Cells(1, a))
If c.Value = Sheets("Fiche Fabrication").Range("F8") Then
b = Cells(65000, c.Column).End(xlUp).Row 'recherche dernière ligne
Sheets("Fiche Fabrication").Range("D17:D" & b).Value = Range(Cells(1, c.Column), Cells(b, c.Column)).Value
Exit For
End If
Next c
End Sub
Sub ZZZ()
On Error GoTo fin
Range("A1").Select
Nombre = Sheets("Fiche Fabrication").Range("F8")
Columns(1).Find(Nombre).Select ' si tu cherches en colonne 1
Premier = ActiveCell.Row 'donne la ligne du nombre cherché
ActiveCell.Offset(1, 0).Select
While ActiveCell = ""
ActiveCell.Offset(1, 0).Select
Wend
Dernier = ActiveCell.Offset(-1, 0).Row 'donne la Dernière ligne de "3"
Range("B" & Premier, "B" & Dernier).Select 'si +sieurs clonnes, change le 2° "B"
Selection.Copy
Exit Sub
End Sub
Est ce que quelqu'un pourrait m'aider?
Merci beaucoup
A voir également:
- Copier une plage en fonction de la valeur d'une cellule
- Fonction si et - Guide
- Comment copier une vidéo youtube - Guide
- Aller à la ligne dans une cellule excel - Guide
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image de manchots sur une image de plage. retrouvez l'image originale de la plage. que cachent les manchots ? ✓ - Forum Windows
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
2 réponses
Bonjour
Pourquoi utiliser une macro alors qu'une RECHERCHEV ou H sur la feuille pourrait peut être suffire ?
Post un exemple allégé et anonymé de ton fichier avec les 2 feuilles sur cjoint.com et indiques ici le lien fourni
on y verra plus clair
Cdlmnt
Pourquoi utiliser une macro alors qu'une RECHERCHEV ou H sur la feuille pourrait peut être suffire ?
Post un exemple allégé et anonymé de ton fichier avec les 2 feuilles sur cjoint.com et indiques ici le lien fourni
on y verra plus clair
Cdlmnt
Bonjour,
Merci pour votre message. J'ai bien essayé avec une recherche V mais comme il faut copier la liste entière ca ne marche pas.
Voici le fichier an pièce jointe, la liste déroulante est dans la feuille fiche de fabrication en F8, je voudrais que chaque fois qu'un produit est choisi, il me recopie à partir de la case D17 les différents composants du produit (colonne B dans la feuille assechants) et dans la colonne B de la feuille Fiche de Fabrication le pourcentage de chaque composant à apporter (colonne C de la feuille assechants).
http://cjoint.com/?CJxodoHfDcA
Voila j'espère que c'est clair...
Merci pour votre message. J'ai bien essayé avec une recherche V mais comme il faut copier la liste entière ca ne marche pas.
Voici le fichier an pièce jointe, la liste déroulante est dans la feuille fiche de fabrication en F8, je voudrais que chaque fois qu'un produit est choisi, il me recopie à partir de la case D17 les différents composants du produit (colonne B dans la feuille assechants) et dans la colonne B de la feuille Fiche de Fabrication le pourcentage de chaque composant à apporter (colonne C de la feuille assechants).
http://cjoint.com/?CJxodoHfDcA
Voila j'espère que c'est clair...
Voilà
En présentant différement les composants on recupère les données avec INDEX EQUIV sans besoin de macro
https://www.cjoint.com/?0JxrAQXNz24
En espérant que c'est bien ce que tu voulais
Cdlmnt
En présentant différement les composants on recupère les données avec INDEX EQUIV sans besoin de macro
https://www.cjoint.com/?0JxrAQXNz24
En espérant que c'est bien ce que tu voulais
Cdlmnt