Inverser deux lignes

JACQUOT45

XLDnaute Nouveau
Bonjour à tous
Existe t' il une fonction pour inverser deux lignes dans un tableau
sans pertes de données?
Merci d' avance
 

haonv

XLDnaute Occasionnel
Re : Inverser deux lignes

bonjour forum ,

tu peux simplement procéder de cette façon :
admettons que tu veuille inverser les lignes 2 et 3
-sélectionner la ligne 3 (ou les cellules de la ligne 3 que tu veux déplacer)
-clic droit puis "couper"
-sélectionner ligne 2
-puis clic droit et "insérer les cellules coupées"
Les lignes 2 et 3 de ton tableau sont inversées.
Attention , si il y a des formules dans ces cellules qui font références à d'autres lignes ,les formules seront erronées
Amicalement
 
Dernière édition:

Base_ile

XLDnaute Nouveau
Re : Inverser deux lignes

Bonjour,

Vous pouvez utiliser le code suivant ... apres avoir selectionner une cellule sur la première des lignes à inverser

Sub Macro1()

l = Selection.Row
Rows(l & ":" & l).Select
Selection.Insert Shift:=xlDown
Rows(l + 2 & ":" & l + 2).Select
Selection.Cut Destination:=Rows(l & ":" & l)
Rows(l + 2 & ":" & l + 2).Select
Selection.Delete Shift:=xlUp
End Sub


Cordialement

Base Ile

PS : vous pouvez affecter cette mini macro à une icone ou une commande dans un menu...
 

JACQUOT45

XLDnaute Nouveau
Re : Inverser deux lignes

Merci haonv
J' avais trouvé une autre alternative (en fin de compte,je me suis mal exprimé,ce que je voulais,c' est déplacer une ligne,mais ça revient au même)qui marche aussi
Je sélectionne la ligne ou les cellulles de ma ligne,et en mettant le curseur sur la bordure de ma sélection,le curseur se change en deux flèches croisées,et en appuyant sur "shift" tu déplace la ligne
Mais ta façon est plus rapide et précise en cas d' un tableau avec beaucoup de lignes.
Amicalement
 

jemmy1989

XLDnaute Nouveau
Re : Inverser deux lignes

bonjour

je déterre ce sujet car je cherche la méme chose, avec le code vba que vous avez donner il inverse la ligne avec celle qui est au dessus, moi je cherche une astuce ou une macro pour inverser deux lignes que je choisis moi même c'est à dire une ligne contre l'autre ou méme plus 2 ou 4 lignes contre 4 autres et pas forcément cote à cote
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Inverser deux lignes

Bonjour jemmy1989,

Un essai dans le fichier joint. Taper Ctrl+m pour lancer la macro. On devrait pouvoir déplacer et insérer d'une feuille sur une autre, soit des zones soit des lignes entières.
 

Pièces jointes

  • jemmy1989-déplacer-v1.xlsm
    18.1 KB · Affichages: 163
Dernière édition:

job75

XLDnaute Barbatruc
Re : Inverser deux lignes

Bonjour jemmy1989, mapomme,

Tu me pardonneras mapomme de squatter ton fichier :)

Dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static sel As Range
Dim a As Range, b As Range
For Each a In Target.Areas
  If a.Columns.Count < Columns.Count Then
    If Not sel Is Nothing And Target.Count = 1 Then
      If MsgBox("Couper-insérer la plage " & sel.Address(0, 0) & " ?", 4) = 6 Then
        For Each b In sel.Areas
          b.Cut
          Target.EntireRow.Insert
        Next
      End If
    End If
    Set sel = Nothing
    Exit Sub
  End If
Next
Set sel = Target 'mémorisation
End Sub
A+
 

Pièces jointes

  • jemmy1989-déplacer(1).xlsm
    17.8 KB · Affichages: 131
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 079
Messages
2 085 133
Membres
102 790
dernier inscrit
nabilziad