Sélect une cells dans une plage de donnée et copier la ligne
Sharox
-
21 oct. 2013 à 08:38
jordane45
Messages postés38144Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 avril 2024
-
21 oct. 2013 à 11:24
Bonjour, tout le monde
j'ai un autre problème
.
Cette fois j'accepte les liens même si je suis retissent au personne qui spam de lien..
.
Donc je vous pose le contexte:
.
Dans le même classeur
Nous allons dire :
Chemin "C:\Users\Documents\"
Classeur "clas1.xls"
Feuille ou sont les informations "feuil1"
Feuille ou on copie les informations "feuil2"
.
Maintenant le problème :
.
Dans la "feuil1", il y a des deux colonnes
une avec des références, et l'autre avec des quantités.
.
Dans la "feuil2", il y a environ 7colonnes (mais c'est pas important)
et 51 000 lignes donc me dites pas de les faire une par une...
dans la 6em colonne il y a une référence (qui correspond au référence de la feuil1)
et la 7em je voudrait afficher les quantités qui correspondent aux références
.
En gros si vous comprenez pas "feuil1" j'ai :
.
.....A......|......B
YM05GF | 58
YM06GH | 23
TYHF21 | 11
.
De A2 à B35
.
Et "feuil2" j'ai
.
.....A.....|.....B.....|...|.............|......G......|......H
colone1 | colone2 |...| colone5 | YM05GF | et ici je voudrait afficher les quantités
colone1 | colone2 |...| colone5 | YM06GH | qu'il y a en feuil1 pour chaque
colone1 | colone2 |...| colone5 | TYHF21 | référence
.
De A2 à H52000
.
Je vous Remercie de votre aide.
A voir également:
Sélect une cells dans une plage de donnée et copier la ligne
Et une petite précision, comme j'ai énormément de ligne je veux pas faire des copier coller...
exemple pour H1
il recherche dans la colonne A(A2:A35) de la feuil1
la référence qui est en G1 de la feuil2
et copie la cellules B correspondante de la feuil1
en cellules H1 de la feuil2
jordane45
Messages postés38144Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 avril 2024344 21 oct. 2013 à 08:59
Le "Find" c'est comme faire un ctrl+F sur une feuille. ..
Dans le what tu dois indiquer le "texte" cherché ou LA cellule contenant ce que tu cherches. .. non une
plage de plusieurscellules.
Il te faudra donc boucler sur chaque ligne de ta feuille 2 et faire un find parrapport aà la feuille 1.
D'accord
donc maintenant j'ai fait ces lignes de code
et je sais pas si c'est bon ou j'ai oublié quelque chose :
Sub le nom que tu veux ()
Dim Trouve As Range
Dim PlageDeRecherche As Range
Dim Valeur_Cherchee As Variant
Dim AdresseTrouvee As String
Valeur_Cherchee = <gras>("G1")</gras>
Set PlageDeRecherche = Sheet("feuil1").Columns(1)
Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)
ActiveRows.Select.Copy
Sheets("feuil2").Range("H").PasteSpecial xlPastValues
Et je voudrait que ca le fasse pour chaque lignes
comment puis-je faire pour ?
Car si G1 je le nom réellement il va me mettre la même valeur pour tous
alors que les valeurs changes
Bonjour,
Déjà, pour tes prochains messages contenant du Code, penses à utiliser la coloration Syntaxique ( première icone en partant de la droite lorsque tu rédiges un message)
Exemple :
'Ceci est du code mis en forme
Dim Trouve As Range
Dim PlageDeRecherche As Range
Dim Valeur_Cherchee As Variant
Dim AdresseTrouvee As String
Ensuite, comme je te l'ai indiqué précédement, tu vas devoir boucler sur chaque ligne de ta feuille 2.
DerniereLigne = Cells.Find("*", Range("A1"), , , xlByRows, xlPrevious).Row
For l=1 to DerniereLigne
Valeur_Cherchee = Range("G"& l ).value
'...ici ton find puis tes actions de copier/coller
'...
Next ' on passe à la ligne suivante
21 oct. 2013 à 08:53