Intervertir deux lignes VBA

Résolu
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.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. 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
    1. 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
      1. Merci Iama, j'utilisais mal la fonction Range et Set.
        Tout est rentré dans l'ordre.