Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

copier des valeurs dans une autre feuille

  • Initiateur de la discussion Initiateur de la discussion philipos_353
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

philipos_353

Guest
bonjour,

j'ai besoin de votre aide pour trouver une macro voici une partie du fichier qui contient plus de 9000 lignes afin de :
copier la valeur de la colonne I (prix) de la feuille1 dans la feuille 2 en colonne Q (PU), la comparaison se ferai avec la colonne L de la feuille 2 et la C de la feuille 1, seul valeur commune au deux feuilles ( le NOI).

merci beaucoup,
cordialement,


philippe
 

Pièces jointes

Re : copier des valeurs dans une autre feuille

je reponds peut etre a coté ,
Mais a tu essayé la formule RechercheV?
explication
a placer dans la cellule ou tu veux rapatrier la valeur
=RECHERCHEV(L2;Feuil1!C:J;3;"faux")
puis tu etant a l'ensemble de tes cellules
nicoloc
 
Re : copier des valeurs dans une autre feuille

je reponds peut etre a coté ,
Mais a tu essayé la formule RechercheV?
explication
a placer dans la cellule ou tu veux rapatrier la valeur
=RECHERCHEV(L2;Feuil1!C:J;3;"faux")
puis tu etant a l'ensemble de tes cellules
nicoloc
désolé nicoloc,
j'avais essayé ceci mais cela ne fonctionne pas.
merci encore
 
Re : copier des valeurs dans une autre feuille

bonjour philipos

Voila une macro qui devrait faire ce que tu souhaites

Mais....
Attention dans la feuille 1 il y a un joyeux melange de formats
La comparaison se faisant sur la valeur (et non l'affichage) il faudra commencer par mettre en uniformité dans les 2 feuiles

Code:
Sub report()
For n = 2 To Sheets("Feuil1").Range("C65536").End(xlUp).Row
 Set c = Sheets("Feuil2").Columns("L").Find(Sheets("Feuil1").Range("C" & n), LookIn:=xlValues, lookat:=xlWhole)
 If Not c Is Nothing Then
   Sheets("Feuil2").Cells(c.Row, c.Column + 5) = Sheets("Feuil1").Range("C" & n).Offset(0, 6)
 End If
Next n
End Sub
 
Re : copier des valeurs dans une autre feuille

Bonjour,

Je cherche une macro pour comparer des fichier sur un critere commun
extraire les données (je joue sur les déplacements puis copie le résultat).
La fonction recherche n'est pas viable dans mon cas.
Aussi je souhaiterais utiliser une boucle avec recherche tant que la cellule contient une valeur. Je joint un début de macro, ne vous moquez pas.
Elle fonctionne mais si elle ne trouve pas de valeur elle me met une herreure ?
Sub test()
'
' test Macro
' Macro enregistrée le 04/12/2007 par Frédéric MARTIN
'
'
Dim Var
Sheets("Feuil1").Select
Range("A1").Select
Var = ActiveCell.Value

Do While Var > 0
'Selection.Copy
Sheets("Feuil2").Select

Cells.Find(What:=Var, After:=ActiveCell, LookIn:=xlFormulas, lookat:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
ActiveCell.Offset(0, 1).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Feuil1").Select
ActiveCell.Offset(0, 1).Select
ActiveSheet.Paste
ActiveCell.Offset(1, -1).Select
Var = ActiveCell.Value
Loop
End Sub
 
Re : copier des valeurs dans une autre feuille

bonjour FREDPLONGEUR

Teste:

Code:
......
Sheets("Feuil2").Select

[COLOR=blue]Set c=[/COLOR]Cells.Find(What:=Var, After:=ActiveCell, LookIn:=xlFormulas, lookat:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False)'.Activate
[COLOR=blue]if not c is nothing then
[/COLOR]ActiveCell.Offset(0, 1).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Feuil1").Select
ActiveCell.Offset(0, 1).Select
ActiveSheet.Paste
ActiveCell.Offset(1, -1).Select
Var = ActiveCell.Value
[COLOR=blue]End if[/COLOR]
Loop
....
 
Re : copier des valeurs dans une autre feuille

Merci beaucoup PierreJean
Je te joints mon fichier exemple
La feuille 1 ne possède que les critères, la feuille2 les
critères et les données a recopier.
J'ai repris ton programme, mais la fonction de recherche ne fonctionne
pas au deuxcième passage de la macro.
Je n'ai pu encore tester dans le cadre de "si pas trouvé" celle ci doit
continuer sur les autres critères en laissant le champ non trouvé vide.
Cette macro va me servir à la gestion de différents Tarifs avec comparaison.
Je débute en VB (dans le temps je travaillais avec Quick basic)
 

Pièces jointes

Re : copier des valeurs dans une autre feuille

Re

Vois si cela va mieux

Code:
Sub test()
'
' test Macro
' Macro enregistrée le 04/12/2007 par Frédéric MARTIN
'
 Dim Var As Range
    Sheets("Feuil1").Select
    Range("A1").Select
    Set Var = ActiveCell
Do While Var.Value > 0
    Sheets("Feuil2").Select
    Set c = Cells.Find(What:=Var.Value, After:=ActiveCell, LookIn:=xlFormulas, lookat:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext)        
    If Not c Is Nothing Then
        Var.Offset(0, 1) = c.Offset(0, 1)
    End If
   Set Var = Var.Offset(1, 0)
Loop
End Sub
 
Re : copier des valeurs dans une autre feuille

super ça marche, je vais l'adapter à mes tableaux
Merci beaucoup pour ton aide PierreJean
Grace à toi je vais pouvoir avancer plus rapidement
Merci également au FORUM
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…