[Excel.VBA]Transformer les colonnes en lignes
Résolu/Fermé
iliesss
Messages postés
113
Date d'inscription
mardi 14 septembre 2010
Statut
Membre
Dernière intervention
26 octobre 2014
-
6 déc. 2010 à 11:49
iliesss Messages postés 113 Date d'inscription mardi 14 septembre 2010 Statut Membre Dernière intervention 26 octobre 2014 - 7 déc. 2010 à 16:26
iliesss Messages postés 113 Date d'inscription mardi 14 septembre 2010 Statut Membre Dernière intervention 26 octobre 2014 - 7 déc. 2010 à 16:26
A voir également:
- [Excel.VBA]Transformer les colonnes en lignes
- Vente en ligne particulier - Guide
- Word colonnes indépendantes - Guide
- Transformer majuscule en minuscule - Guide
- Partage de photos en ligne - Guide
- Excel trier par ordre alphabétique en gardant les lignes - Guide
2 réponses
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
6 déc. 2010 à 13:44
6 déc. 2010 à 13:44
Bonjour,
Voir avec "Collage spécial" et le paramètre "Transpose"
A+
Voir avec "Collage spécial" et le paramètre "Transpose"
A+
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 6/12/2010 à 17:33
Modifié par michel_m le 6/12/2010 à 17:33
Bonjour,
regarde si cette macro te convient:
Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
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)
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
6 déc. 2010 à 17:41
6 déc. 2010 à 17:41
Heu, j'oubliais !...
range("nettoye")
"nettoye" correspond a la plage
demo:
http://www.cijoint.fr/cjlink.php?file=cj201012/cij5nlZs09.xls
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
iliesss
Messages postés
113
Date d'inscription
mardi 14 septembre 2010
Statut
Membre
Dernière intervention
26 octobre 2014
7 déc. 2010 à 16:26
7 déc. 2010 à 16:26
Salut mr Michel ça marche très bien
Je vous remercier infiniment .
Je vous remercier infiniment .