[Excel.VBA]Transformer les colonnes en lignes [Résolu/Fermé]

Signaler
Messages postés
113
Date d'inscription
mardi 14 septembre 2010
Statut
Membre
Dernière intervention
26 octobre 2014
-
Messages postés
113
Date d'inscription
mardi 14 septembre 2010
Statut
Membre
Dernière intervention
26 octobre 2014
-
Bonjour
J'ai une plage de 3 colonnes
SVP Comment transformer ces 3 colonnes en une seule ligne dans une autre feuille.
Merci
http://www.cijoint.fr/cjlink.php?file=cj201012/cijssH97UI.xls

2 réponses

Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 162
Bonjour,
Voir avec "Collage spécial" et le paramètre "Transpose"
A+
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
16451
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
17 mai 2021
3 172
Bonjour,

regarde si cette macro te convient:
Sub transposer_sur1ligne() 
Dim lig As Integer, cptr As Byte, source As String, cible As String 

Application.ScreenUpdating = False 
With Sheets("table") 
    lig = .Range("A1000").End(xlUp).Row + 1 
    .Cells(lig, 1) = Format(Sheets("saisie").Range("D1"), "mm/dd/yy") 
    .Cells(lig, 2) = Sheets("saisie").Range("D2") 
End With 

For cptr = 1 To 9 
With Sheets("saisie") 
    source = Choose(cptr, "B5:B8", "B10:B15", "B17", "C5:C8", "C10:C15", "C17", "D5:D8", "D10:D15", "D17") 
End With 

With Sheets("table") 
  cible = Choose(cptr, "C" & lig & ":F" & lig, "G" & lig & ":L" & lig, "M" & lig, _ 
                                         "N" & lig & ":Q" & lig, "R" & lig & ":W" & lig, "X" & lig, _ 
                                         "Y" & lig & ":AB" & lig, "AC" & lig & ":AH" & lig, "AI" & lig) 
                                         
.Range(cible) = Evaluate("transpose(saisie!" & source & ")") 
End With 
Next 
With Sheets("saisie") 
    .Range("D1:D2").ClearContents 
    .Range("nettoye").ClearContents 
End With 
End Sub



Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
16451
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
17 mai 2021
3 172
Heu, j'oubliais !...
range("nettoye")
"nettoye" correspond a la plage
=saisie!$B$5:$D$8;saisie!$B$10:$D$15;saisie!$B$17:$D$17

demo:
http://www.cijoint.fr/cjlink.php?file=cj201012/cij5nlZs09.xls
Messages postés
113
Date d'inscription
mardi 14 septembre 2010
Statut
Membre
Dernière intervention
26 octobre 2014

Salut mr Michel ça marche très bien
Je vous remercier infiniment .