Macro insertion ligne / transposition
Résolu3 réponses
-
ContributeurBonjour,
En vba faire Alt F11 pour accéder a l'éditeur.
Ensuite sélectionner la feuille concernée en haut à gauche.
mettre ceci:
Option Explicit Dim ligne As Long Dim lettre As String Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Intersect(ActiveCell, Range("G:G")) Is Nothing Then 'rien Else ligne = Target.Value If ligne = 1 Then lettre = ActiveCell.Offset(0, -5).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre End If If ligne = 2 Then lettre = ActiveCell.Offset(0, -4).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -5).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre End If If ligne = 3 Then lettre = ActiveCell.Offset(0, -3).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -4).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -5).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre End If If ligne = 4 Then lettre = ActiveCell.Offset(0, -2).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -3).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -4).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre lettre = ActiveCell.Offset(0, -5).Value ActiveCell.Offset(1).Resize(1, 1).EntireRow.Insert ActiveCell.Offset(1, -5).Value = lettre End If End If End Sub
-
-
Contributeurvoici un exemple:
http://www.cjoint.com/c/EFyioHmqZPQ

