Copie d'une plage VBA
Résolu
pgillou
Messages postés
53
Statut
Membre
-
pgillou Messages postés 53 Statut Membre -
pgillou Messages postés 53 Statut Membre -
Bonjour à tous,
Besoin d'aide sur le code suivant:
If .Cells(Lig, Col).Value = "ENCLENCHEMENT A DISTANCE" Or .Cells(Lig, Col).Value = "RESERVE" Then 'Valeur de la cellule des lignes à sélectionner
.Cells(Lig, Col).EntireRow.Copy
NumLig = NumLig + 1
Cells(NumLig, 1).Select
ActiveSheet.Paste Link:=True
End If
Il permet de copier une ligne entière si il trouve valeur dans une colonne définit plus haut dans le code.Je cherche à copier une partie de la ligne donc une plage.
Merci pour vos réponses et bonne journée.
Besoin d'aide sur le code suivant:
If .Cells(Lig, Col).Value = "ENCLENCHEMENT A DISTANCE" Or .Cells(Lig, Col).Value = "RESERVE" Then 'Valeur de la cellule des lignes à sélectionner
.Cells(Lig, Col).EntireRow.Copy
NumLig = NumLig + 1
Cells(NumLig, 1).Select
ActiveSheet.Paste Link:=True
End If
Il permet de copier une ligne entière si il trouve valeur dans une colonne définit plus haut dans le code.Je cherche à copier une partie de la ligne donc une plage.
Merci pour vos réponses et bonne journée.
6 réponses
-
pour copier une plage et pas toute la ligne...
j'utiliserai les fonctions Resize( nombre de ligne, nombre de colonne)
il est possible de le combiner avec offset (nombre de ligne, nombre de colonne) dans le cas où l'on ne copie pas la cellule source... -
-
Merci de ta réponse! Mais je pense pas que ce soit adapter tu le mettrais ou dans le code?
-
je pense que ton code se trouve dans une boucle with
donc pour l'exemple j'ai supprimé les .Cells
Sub test()
Range("A2").Select
lig = 2
col = 1
If Cells(lig, col).Value = "ENCLENCHEMENT A DISTANCE" Or Cells(lig, col).Value = "RESERVE" Then 'Valeur de la cellule des lignes à sélectionner
Cells(lig, col).Resize(1, 3).Copy ' on copie 3 colonnes
NumLig = NumLig + 1
Cells(NumLig, 1).Select
ActiveSheet.Paste Link:=True
End If
End Sub -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
comme bidouilleur mais a la ligne concerné :
Range("A" & ligne, "C" & ligne).Copy
Si tu veux copier de la cellule Aligne à la cellule Cligne ! -
Merci pour vos réponses à tout les deux ! Je vais tester ça et je vous tiens au courant.
Bonne après midi