probleme base de donnée excel boulet inside - Logiciels - Windows & Software
Marsh Posté le 31-10-2006 à 13:20:44
Copier / Edition => Collage spécial => Coche la case "Transposé" et hop c'est fait ^^
Marsh Posté le 31-10-2006 à 13:21:36
avec une petite macro ca doit etre faisable,...
sinon tu tape le user juasqu a ce qu il ai corrigé
Marsh Posté le 31-10-2006 à 13:22:00
copie les champs
puis collage special et coche la case "transposé"
edit : arf owned
Marsh Posté le 31-10-2006 à 13:41:39
ç marche pas
le resultat c'est
champ1 ; champ2; champ3 champ1 ; champ2; champ3 champ1 etc etc
je voudrais
champ1 ; champ2; champ3
champ1 ; champ2; champ3
Marsh Posté le 31-10-2006 à 14:29:40
àpartir du debut de solution j'ai copier / coller les cellules 3 par3
85 ligne plus tard le tableau est fini
mais si qqun à une solution totale je suis preneru car je suis sur que ça resserviera
je dois d'alleur avoir 2 ou 3 tableua comme ça sous le coude
sinon le user il recommencera plus
Marsh Posté le 31-10-2006 à 14:34:18
Ok tableix,
Il te faut créer une boucle for.
Tu lis chaque ligne de ta colonne, tu incrémentes un compteur de 1 à 3.
Tu écris la valeur lue dans la colonne correspondant au contenu du compteur.
C'est simple, non ?
Marsh Posté le 31-10-2006 à 15:20:37
desole je connais pas le vba donc je comprends tout a fait la logique mais je suis incapable de 'l'ecrire
Marsh Posté le 31-10-2006 à 15:34:08
Ok tableix,
je blagais. Voici une solution en code VBA pour Excel :
Sub Transposer()
Dim LiLue, ColLue, LiEcrite, ColEcrite
LiLue = 1 'La ligne lue dans la Feuil1
ColLue = 1 'Toujours = 1, on lit la 1° col. de la feuil1
LiEcrite = 1
ColEcrite = 1 'La colonne dans la Feuil2
For LiLue = 1 To 18 Step 3 'Lire de la ligne 1 à la ligne 18
'Ecrire dans les 3 colonnes d'une autre page
ThisWorkbook.Sheets("Feuil2" ).Cells(LiEcrite, ColEcrite).Value = Sheets("Feuil1" ).Cells(LiLue, ColLue)
ThisWorkbook.Sheets("Feuil2" ).Cells(LiEcrite, ColEcrite + 1).Value = Sheets("Feuil1" ).Cells(LiLue + 1, ColLue)
ThisWorkbook.Sheets("Feuil2" ).Cells(LiEcrite, ColEcrite + 2).Value = Sheets("Feuil1" ).Cells(LiLue + 2, ColLue)
LiEcrite = LiEcrite + 1
Next LiLue
End Sub
A+
Marsh Posté le 31-10-2006 à 20:48:33
hé bé.. y a qui sont né dedant !
chapeau bas messieurs
Marsh Posté le 02-11-2006 à 12:56:03
Reply
Marsh Posté le 31-10-2006 à 13:17:50
j'ai un user qui m'a fait un tableau du genre
dans la colonne A
champ1
champ2
champ3
champ1
champ2
etc....
et biensur je voudrais passer en
ligne 1: champ1 ; champ2; champ3
ligne 2: champ1 ; champ2; champ3
etc etc....
si qqun à une idéee simple et rapide merci de ma la communiquer ...