Comment intercaler deux à deux des lignes sous excel

laurentj

XLDnaute Nouveau
Bonjour,

Je cherche, en partant deux deux colonnes données, à obtenir automatiquement une troisième colonne, qui correspond aux deux colonnes initales intercalées deux à deux (Cf exemple joint).

Merci d'avance.

Laurent.
 

Pièces jointes

  • exemple.xlsx
    9.4 KB · Affichages: 99
  • exemple.xlsx
    9.4 KB · Affichages: 92
  • exemple.xlsx
    9.4 KB · Affichages: 106

mth

XLDnaute Barbatruc
Re : Comment intercaler deux à deux des lignes sous excel

Bonjour laurent,

Tu auras certainement de bien meilleures propositions, mais en attendant vois si ce code peut t'aider:

Code:
Sub Macro1()
Dim dlig As Long, dlig2 As Long, l As Long, i As Long
Application.ScreenUpdating = False
With Sheets("Feuil1")
    .Columns("G:G").ClearContents
    dlig = .Cells(Rows.Count, 2).End(xlUp).Row
    .Range("B3:B" & dlig).Copy .Range("G3")
        For l = dlig To 3 Step -1
          .Cells(l + 1, 7).Insert Shift:=xlDown
        Next l
  
    dlig2 = .Cells(Rows.Count, 7).End(xlUp).Row
    
        For i = dlig2 + 1 To 4 Step -2
            .Cells(i, 7) = .Cells(dlig, 3)
            dlig = dlig - 1
        Next i
End With
Application.ScreenUpdating = True
End Sub

Bien à toi,

mth

Edit: Hello laetitia, et merci pour ton code :)
 
Dernière édition:

laurentj

XLDnaute Nouveau
Re : Comment intercaler deux à deux des lignes sous excel

Merci à tous deux. Je vais en profiter pour vous poser une ou deux questions complémentaires ;-).

Quel est le code pour demander une action, par exemple une ligne sur deux.

Par exemple, comment fait on si l'on veut que soit mises en gras toutes les lignes paires (ou toutes les lignes impaires ) d'une colonne donnée ?

De la même façon, comment fait on pour insérer une ligne vierge, toutes les trois lignes par exemple ?

Merci d'avance pour vos petits codes qui semblent marcher à merveille !

Laurent.
 
Dernière édition:

laetitia90

XLDnaute Barbatruc
Re : Comment intercaler deux à deux des lignes sous excel

bonjour,:):):)

exemple en reprenant ton fichier il faut regarder
Code:
mod

Code:
Sub est()
Dim i As Long
For i = 3 To Cells(Rows.Count, 2).End(xlUp).Row
If i Mod 2 = 0 Then Cells(i, 2).Font.FontStyle = "Gras"
Next i
End Sub

pour insertion je pars du bas vers le haut


Code:
Sub esv()
Dim i As Long
For i = Cells(Rows.Count, 2).End(xlUp).Row To 3 Step -3
Rows(i).Insert Shift:=xlDown
Next i
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 222
Messages
2 107 470
Membres
109 836
dernier inscrit
SophieL16