VBA excel : insertion de 5 lignes + transposition
Résolu/Fermé
A voir également:
- VBA excel : insertion de 5 lignes + transposition
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Aller à la ligne excel - Guide
- Excel compter cellule couleur sans vba - Guide
3 réponses
on ne le voit pas bien dans le message, mais je précise je souhaite transposer les chiffres des 5 dernières colonnes en dessous de la colonne 2
Merci d'avance ! =)
Merci d'avance ! =)
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 nov. 2015 à 13:59
5 nov. 2015 à 13:59
Bonjour,
combien as tu de lignes (environ) au départ ?
combien as tu de lignes (environ) au départ ?
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 nov. 2015 à 16:43
5 nov. 2015 à 16:43
C'est parti ! réponse certainement demain
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 5/11/2015 à 18:07
Modifié par michel_m le 5/11/2015 à 18:07
Ben ce sera avant la soupe de châtaignes et l'omelette aux cèpes ;o)
La maquette
http://www.cjoint.com/c/EKfrfSLt8NL
tu dis
Michel
Option Explicit
Option Base 1
'--------------------------------------------------------------------------
Sub transposer_5()
Dim Derlig As Long, T_in, T_out
Dim Cptr_in As Long, cptr_out As Long, Col As Byte
'----------------------------------------------------initialisations
Application.ScreenUpdating = False
'mémorisation des tableaux brut et sortie
Derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
T_in = Range("A2:G" & Derlig) ' adapter ligne départ
ReDim T_out(UBound(T_in) * 6, 7)
'---------------------------------------------------réorganisation des données
cptr_out = 1
For Cptr_in = 1 To UBound(T_in)
For Col = 1 To 7
T_out(cptr_out, Col) = T_in(Cptr_in, Col)
Next
For Col = 2 To 7
T_out(cptr_out, 2) = T_in(Cptr_in, Col)
cptr_out = cptr_out + 1
Next
Next
'-----------------------restitution de la réorganisation
Columns("L:R").Clear 'transformer en A:G" après essais
Range("L2").Resize(UBound(T_out), 7) = T_out 'a transformer en A2 après essais
End Sub
La maquette
http://www.cjoint.com/c/EKfrfSLt8NL
tu dis
Michel