Intervertir deux lignes VBA
Résolu
Archi89
Messages postés
6
Statut
Membre
-
Archi89 Messages postés 6 Statut Membre -
Archi89 Messages postés 6 Statut Membre -
Bonjour,
Je vous sollicite pour trouver une solution à mon petit pb.
Voilà, je désire avoir une macro vba qui permet d'intervertir les valeurs de deux lignes.
J'ai un tableau avec P colonnes et 1500 lignes :
J'ai deux boucles (variables i et j, qui balayent les lignes) et j'aimerai intervertir les valeurs (de la colonne A à O (je garde P intacte)) des lignes i et j.
J'espère être assez clair.
Merci d'avance.
Je vous sollicite pour trouver une solution à mon petit pb.
Voilà, je désire avoir une macro vba qui permet d'intervertir les valeurs de deux lignes.
J'ai un tableau avec P colonnes et 1500 lignes :
J'ai deux boucles (variables i et j, qui balayent les lignes) et j'aimerai intervertir les valeurs (de la colonne A à O (je garde P intacte)) des lignes i et j.
J'espère être assez clair.
Merci d'avance.
3 réponses
-
J'ai pensé à ceci:
ReDim ligne1(0, 14) As String
ReDim ligne2(0, 14) As String
For n = 1 To 15 '(de A à O)
ligne1(0, n - 1) = Cells(i, n).Value
ligne2(0, n - 1) = Cells(j, n).Value
Cells(i, n).Value = ligne2(0, n - 1)
Cells(j, n).Value = ligne1(0, n - 1)
Next
Je rappel que j'ai deux boucles i et j (elles ne sont pas représentées ici).
Je trouve cette solution assez lourde.
N'existe t'il pas une solution plus simple (sans boucle n, pas ex)?
Merci d'avance -
Bonjour Archi89
Je pense que tu peux t'inspirer de :
Dim zoN As Range, zonV As Variant
Set zoN = Range(Cells(2, 1), Cells(2, 15))
zonV = zoN.Value
Range(Cells(4, 1), Cells(4, 15)) = zonV
Iama -
Merci Iama, j'utilisais mal la fonction Range et Set.
Tout est rentré dans l'ordre.