Copier/coller cellule en boucle

Bonjour,

Je voudrais rechercher dans un fichier source le mot "TEST JB" en colonne G, copier sa cellule respective et la coller dans un fichier destination.

Dans le fichier destination, je voudrais coller la valeur dans les cellules qui contiennent le mot "VALEUR JB" en colonne G

La macro que j'ai rédigé ne me permet pas de coller, je ne comprends pas pourquoi, pourriez-vous me venir en aide svp ?

'Recherche du mot TEST_JB dans fichier source
For I = 7 To Ws.Range("G" & Rows.Count).End(xlUp).Row
    If Ws.Range("G" & I).Value Like "*" & " TEST JB" & "*" Then Ws.Range("G" & I).Copy
Next I

' Recherche du mot valeur JB dans fichier destination
For I = 4 To wbkc.Sheets("JB").Range("G" & Rows.Count).End(xlUp).Row
    If wbkc.Sheets("JB").Range("G" & I).Value Like "*" & "valeur JB" & "*" Then
        wbkc.Sheets("JB").Range("G" & I).Paste
        wbkc.Sheets("JB").Range("G" & I).Interior.Color = RGB(255, 0, 0)
    End If
Next I

Merci beaucoup

JB

Hello,

Une fois que la cellule est copiée, il faut lui indiquer où la coller.

1) Boucle sur colonne G

2) Si valeur = "test jb"

3) Trouver une cellule dans le classeur de destination une cellule contenant "valeur JB"

4) une fois trouvée, copier coller

qqch comme ceci peut être ( a adapter via une feuille d'un autre classeur) : 

For I = 7 To Range("G" & Rows.Count).End(xlUp).Row
    If Range("G" & I).Value Like "TEST JB" Then
        Set Cellule = Sheets(2).Cells.Find(What:="*valeur JB*", LookAt:=xlPart)
        If Not Cellule Is Nothing Then
            Range("G" & I).Copy Cellule
        End If
    End If
Next I

Bonjour,

J'ai écrit cela mais blocage au moment du copier/coller, je ne vois pas où ça pêche...

'Recherche du mot TEST_JB dans fichier source
For I = 7 To Ws.Range("G" & Rows.Count).End(xlUp).Row
    If Ws.Range("G" & I).Value Like "*" & " TEST JB" & "*" Then 
        For j = 4 To wbkc.Sheets("JB").Range("G" & Rows.Count).End(xlUp).Row
            If wbkc.Sheets("JB").Range("G" & j).Value Like "*" & "valeur JB" & "*" Then
                Ws.Range("G" & I).Copy wbkc.Sheets("JB").Range("G" & j).Paste
                wbkc.Sheets("JB").Range("G" & j).Interior.Color = RGB(255, 0, 0)
            End if
        Next j
    end if
Next I

Auriez-vous une piste svp ?

JB

Hello,

Ws.Range("G" & I).Copy wbkc.Sheets("JB").Range("G" & j)

au lieu de :

Ws.Range("G" & I).Copy wbkc.Sheets("JB").Range("G" & j).Paste

Bonjour,

Parfait, c'est top ! Mais pourquoi le "Paste" était de trop ?

Bonne journée

JB

Hello,

C'est la syntaxe vba concernant le copier coller qui est comme ça, il ne faut pas chercher + loin

Bonjour,

OK, merci pour votre retour !

Bonne journée :)

JB

Rechercher des sujets similaires à "copier coller boucle"