Copier une plage en parcourant un Range

Bonjour à tous,

Encore un petit soucis au niveau d'une syntaxe. Je vous simplifie mon problème :

J'ai deux feuilles, Feuil1 et Feuil2. Je parcours la plage B1:B10 (appelé myRange dans le code) de Feuil2, et si mon test est True, alors je copie les colonnes B à V de la ligne que je parcourais.

Mon problème : la syntaxe pour copier uniquement les colonnes B à V de cette ligne. Voici ce que j'ai écris :

Dim myRange as Range
Set myRange = Worksheets("Feuil2").Range("B1:B" & Cells(Rows.Count, "B").End(xlUp).Row)
Dim cell As Range
        For Each cell In myRange
            If TEST Then

                'ICI le problème !!
                Ligne = cell.Row
                Range("Cells(Ligne,2):Cells(Ligne,22)").Copy

                'Puis je colle au bon endroit, je vous épargne cette syntaxe qui est correcte

            End If
        'On regarde la ligne suivante
        Next cell

Je vous remercie d'avance, et j'espère que c'est clair !

Bonjour,

Le problème avec les bribes de code est que ça revient à lire dans une boule de cristal...

Donc mon conseil est de fournir le code intégral et un classeur minimaliste...

A+

Bonjour,

Fournir le code intégral n'aurait pas aidé à la compréhension au vu de sa complexité, les informations nécessaires étant je pense disponibles :)

Merci quand même

Pour ceux qui chercheraient la réponse, la syntaxe correcte est la suivante :

Range(Cells(Ligne,2),Cells(Ligne,22)).Copy

Cela permet de copier la sélection avec un indice de ligne variable, et de la colonne 2 à 22 (par exemple, dans une boucle).

Rechercher des sujets similaires à "copier plage parcourant range"