rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[Excel]Passer une liste de ligne à colonne

Klendos, le mercredi 31 août 2005 à 14:46:04
Bonjour à tous,

J'ai une table excel qui à cette gueule la :


[code]Article Opé1 Temps1 Opé2 Temps2 .... Opé12 Temps 12
xxx FRA 10 USI 22 .... TOUR 25
yyy TOUR 15 ZAY 30 .... HUR 15
etc..
[/code]


Et je voudrais arriver à qqch comme cela :



[code]Article N° Opé Opé Temps
xxx 10 FRA 10
xxx 20 USI 22
.....
xxx 120 TOUR 25
yyy 10 TOUR 15
yyy 20 ZAY 30
....
yyy 120 HUR 15[/code]

J'ai fais une macro qui ne met en forme que la premiére ligne du fichier 1, et je n'arrive pas à la répéter pour toutes les autres ligne.


Est-ce que qqun peux m'aider pour arriver à mes fins???

Merci d'avance!
Répondre à Klendos  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le mercredi 31 août 2005 à 14:53:33
;-)

Fais voir ta macro....

;-) Wild and Free
Répondre à WhiteFang

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
k-lendos, le mercredi 31 août 2005 à 15:19:01
Range("A2").Select
Selection.Copy
Windows("InterfaceGamme.xls").Activate
ActiveSheet.Paste
Range("B2").Select
Application.CutCopyMode = False

ActiveCell.FormulaR1C1 = "10"
Range("B3").Select
ActiveCell.FormulaR1C1 = "20"
Range("B4").Select
ActiveCell.FormulaR1C1 = "30"
Range("B5").Select
ActiveCell.FormulaR1C1 = "40"
Range("B6").Select
ActiveCell.FormulaR1C1 = "50"
Range("B7").Select
ActiveCell.FormulaR1C1 = "60"
Range("B8").Select
ActiveCell.FormulaR1C1 = "70"
Range("B9").Select
ActiveCell.FormulaR1C1 = "80"
Range("B10").Select
ActiveCell.FormulaR1C1 = "90"
Range("B11").Select
ActiveCell.FormulaR1C1 = "10"
Range("B11").Select
ActiveCell.FormulaR1C1 = "100"
Range("B12").Select
ActiveCell.FormulaR1C1 = "110"
Range("B13").Select
ActiveCell.FormulaR1C1 = "120"
Range("D2").Select
Windows("DUBILAODB.xls").Activate
Range("C2").Select
Selection.Copy
Windows("InterfaceGamme.xls").Activate
ActiveSheet.Paste
Range("E2").Select
ActiveSheet.Paste
Range("G2").Select
Windows("DUBILAODB.xls").Activate
Range("E2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("InterfaceGamme.xls").Activate
Range("F2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Cut Destination:=Range("G2")
Range("G3").Select
Windows("DUBILAODB.xls").Activate
Range("H2").Select
Selection.Copy
Windows("InterfaceGamme.xls").Activate
Range("G3,D3").Select
Range("D3").Activate
ActiveSheet.Paste
Range("G3,D3,E3").Select
Range("E3").Activate
ActiveSheet.Paste
Range("G3").Select
Windows("DUBILAODB.xls").Activate
Range("J2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("InterfaceGamme.xls").Activate
ActiveSheet.Paste
Répondre à k-lendos

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le mercredi 31 août 2005 à 15:42:31
;-)

Houlà !! Que de lignes ! ;-)

Pour limiter les lignes, pense aux boucles FOR, pour éviter les "Activate", pense aux variables objets...

;-) Wild and Free
Répondre à WhiteFang

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
k-lendos, le jeudi 1 septembre 2005 à 11:39:03
Voici la macro que j'ai faite :


Sub transpose()

nbcol = 3  ' nombre de couples de données à lire  ope/tps
nbproduit = 4 ' nombre de produits

celluledepart = "C19" ' cellule de départ du tableau à remplir
cellulealire = "A2"  ' cellule de départ des données à parcourir


For prod = 0 To nbproduit
  For i = 0 To nbcol - 1
    Range(celluledepart).Offset(i + (prod * nbcol), 0).Value = Range(cellulealire).Offset(0 + prod, 0).Value
    Range(celluledepart).Offset(i + (prod * nbcol), 1).Value = 10 + 10 * i
    Range(celluledepart).Offset(i + (prod * nbcol), 2).Value = Range(cellulealire).Offset(0 + prod, 2 + (5 * i))
    Range(celluledepart).Offset(i + (prod * nbcol), 3).Value = Range(cellulealire).Offset(0 + prod, 4 + (5 * i))
  Next i
Next prod

End Sub


Mais je n'arrive à faire pointer cellualire et celluledepart dans 2 feuilles différentes.

Merci pour votre aide.
Répondre à k-lendos

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le jeudi 1 septembre 2005 à 12:00:27
;-) Bon, va là : http://domlevinfo.free.fr

Je vais te faire ça, tu comprendras mieux si c'est direct dans ton xls à toi et ça te feras un petit cours VBA...

;-) Wild and Free
Répondre à WhiteFang

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
G.David, le samedi 25 mars 2006 à 00:07:19
Salut WhiteFang
le site que tu indique il est sur un serveur 56K en suisse ou c'est pour qu'on puisse faire un café qu'il est si lent ?2 minutes pleinne pour aller de l'accueil a la page traduction j'ai referme dare dare
Cordialement
G.David le respect n'est pas un dû
il se merite
Répondre à G.David

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le samedi 25 mars 2006 à 08:30:04
;-) Je viens de faire le test... 20 secondes top chrono pour accéder, et la trad, c'est "Voilà" qui fait ça pour moi (pour dire que même en utilisant un service en ligne de trad, cela reste encore "acceptable")... Reste à te poser une question : C'est quoi ta machine ? ;-)))))))) Wild and Free
Répondre à WhiteFang

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
G.David, le samedi 25 mars 2006 à 18:41:32
Salut
1200ghz 512Mo Adsl 2Mo
si le probleme est la machine c'est que les pages sont plutot lourdes non?
sur CCM c'est instantané (moins de 20 secondes là je ne regarde pas ma montre) dommage ça m'interressais au filing et si j'ai bien interpreté ce qui etait en haut de la page j'etait le seul visiteur
Cordialement
G.David
le respect n'est pas un dû
il se merite
Répondre à G.David

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le samedi 25 mars 2006 à 20:03:45
Salut... Si les pages étaient lourdes, tu ne serais pas le seul à avoir ce genre de problème... Dans la mesure où 1 seul utilisateur à un problème alors que les autres n'en ont pas, on a tendance à penser que cela vient de sa machine... Non ? Maintenant, si ta machine va bien et que tu n'as ce genre de problème qu'en venant visiter cet espace, bon, je n'ai pas d'explication à ça... Je sais que l'hébergeur à eu un problème de serveur, mais bon, moi, avec mon petit P3 850Mhz, ça roule... Ou tu n'as vraiment pas de bol et tu tombes pile poil au moment où les serveurs cafouillent... Mais bon, je n'ai globalement pas d'explication rationnelle à te donner...

En attendant, pense bien à regarder ta barre d'état (du browser), pour voir QUI ou QUOI est long à charger...

Cordialement Wild and Free
Répondre à WhiteFang

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
G.David, le samedi 25 mars 2006 à 20:58:19
Ok a ma prochaine visite je regarde tout ça et je te tiens au courant
( je tourne sur mozilla )
Salut le respect n'est pas un dû
il se merite
Répondre à G.David

15


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le jeudi 30 mars 2006 à 19:36:13
;-) Problème résolu... La prochaine fois, tu tomberas sur un nouveau forum...
;-) Wild and Free
Répondre à WhiteFang

16


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
G.David, le vendredi 31 mars 2006 à 23:01:15
Salut White fang
bon je suis repasser (en plus sans le faire exprès en regardant mes cookies) bon !alors , question vitesse WAHOU! si je peut m'exprimer ainsi . ça turbine
question c'était le serveur qui pinailler ou juste le rézo saturé?
Cordialemnt
G.David le respect n'est pas un dû
il se merite
Répondre à G.David

17


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le samedi 1 avril 2006 à 17:04:44
;-) Hello !

C'était un problème avec l'hébergeur, qui à laissé ses serveurs se crasher... Bon, si j'avais été hébergeur, j'aurais prévu au moins 1 onduleur, histoire de pas foutre un milliard de personne sur le carreau...

Donc, j'ai changé... Et j'ai aussi basculé en PhpBb...

Essaie ça, maintenant : http://whitefang.winnerbb.net

Car l'ancien, faut l'oublier...

Best regards Wild and Free
Répondre à WhiteFang

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
k-lendos, le jeudi 1 septembre 2005 à 12:05:28
Voici au final ma macro:

Sub transpose()

nbcol = 12  ' nombre de couples de données à lire  ope/tps
nbproduit = 18 ' nombre de produits


nomclasseur = "DUBILAODB1.xls" ' nom du classeur où se trouve les données
nomfeuille = "Feuil1" ' nom de la feuille

celluledepart = "C19" ' cellule de départ du tableau à remplir
cellulealire = "A2"  ' cellule de départ des données à parcourir


For prod = 0 To nbproduit
  For i = 0 To nbcol - 1
    Range(celluledepart).Offset(i + (prod * nbcol), 0).Value = Workbooks(nomclasseur).Worksheets(nomfeuille).Range(cellulealire).Offset(0 + prod, 0).Value
    Range(celluledepart).Offset(i + (prod * nbcol), 1).Value = 10 + 10 * i
    Range(celluledepart).Offset(i + (prod * nbcol), 2).Value = Workbooks(nomclasseur).Worksheets(nomfeuille).Range(cellulealire).Offset(0 + prod, 2 + (5 * i))
    Range(celluledepart).Offset(i + (prod * nbcol), 3).Value = Workbooks(nomclasseur).Worksheets(nomfeuille).Range(cellulealire).Offset(0 + prod, 4 + (5 * i))
  Next i
Next prod

End Sub


Merci à tous pour votre aide.
Répondre à k-lendos

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
WhiteFang, le jeudi 1 septembre 2005 à 12:23:29
;-) Reste encore les variables objet à explorer, l'adressage en mode texte à passer en numérique, et ça commencera à le faire... Question écriture, j'entends, parce que si ça fonctionne, rien à dire ;-) Wild and Free
Répondre à WhiteFang

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
lami20j, le dimanche 26 mars 2006 à 05:00:15
Bonsoir,

si tu as besoin de résultat et ce n'est pas la méthode qui compte, il y a d'autres façons à le faire. Par exemple avec un script Perl.

Enregistrer sous format txt (séparateur tabulation), un petit script, ensuite ouverture de fichier txt avec excel et voilà.

Script

#! /usr/bin/perl

use warnings;
use strict;

my %txt;
my $i = 0;

while(<DATA>){
my ($cle,$val)=split /t/,$_,2;
$txt{$cle} = [ /w+td+/g ];
}

for (keys %txt){
for my $l (@{$txt{$_}}){
$i += 10;
print "$_t$it$ln";
}
$i=0;
}


# après END sont les colonnes de ton classeur
# sauvegardé en format txt, séparateur tabulation
# execution : script > res_excel.txt
# ensuite ouvrir fichier txt avec excel
__END__
xxx FRA 10 USI 22 ABC 50 FRA 10 USI 22 ABC 50 FRA 10 USI 22 ABC 50 FRA 10 USI 22 ABC 50
YYY TOUR 10 ZAY 22 MAC 50 LEN 10 TOC 22 BIL 50 DOR 10 LUC 22 MIN 50 TOR 10 LES 22 MOC 50

Et le résultat (donc un fichier txt qui ouvert avec excel donne ce que tu veux obtenir)

[lamitest@localhost corbeille]$ perl ccm_excel.pl > ccm_excel_res.txt
[lamitest@localhost corbeille]$ cat ccm_excel_res.txt
xxx 10 FRA 10
xxx 20 USI 22
xxx 30 ABC 50
xxx 40 FRA 10
xxx 50 USI 22
xxx 60 ABC 50
xxx 70 FRA 10
xxx 80 USI 22
xxx 90 ABC 50
xxx 100 FRA 10
xxx 110 USI 22
xxx 120 ABC 50
YYY 10 TOUR 10
YYY 20 ZAY 22
YYY 30 MAC 50
YYY 40 LEN 10
YYY 50 TOC 22
YYY 60 BIL 50
YYY 70 DOR 10
YYY 80 LUC 22
YYY 90 MIN 50
YYY 100 TOR 10
YYY 110 LES 22
YYY 120 MOC 50
[lamitest@localhost corbeille


lami20j
Répondre à lami20j

14


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
lami20j, le dimanche 26 mars 2006 à 05:28:41
Dans le script il y a des erreurs à cause de non affichage des antislashes.
Le script correct http://cjoint.com/?dAfCzHTPth
Répondre à lami20j

18


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
keke, le lundi 24 septembre 2007 à 10:03:05
Coucou,

En regardant l'aide de excel :

"Transposer des lignes en colonnes ou des colonnes en lignes"
Pour que les données de la première ligne de la zone de copie s'affichent dans la colonne de gauche de la zone de collage, et que les données de la colonne de gauche s'affichent sur la première ligne, procédez comme suit :

Sélectionnez les cellules dont vous voulez inverser l'orientation.
Cliquez sur Copier .
Sélectionnez la cellule supérieure gauche de la zone de collage. Cette dernière doit être située à l'extérieur de la zone de copie.
Cliquez sur la flèche à droite du bouton Coller , puis cliquez sur Transposer.



Bon courage.

kéké, Administrateur de Magdales.
Répondre à keke

19


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Dungan, le mardi 6 novembre 2007 à 11:59:52
Bonjour,

Je n'aurai qu'un mot : MERCI keke !!!! :D
A chaque fois je rame pour retrouver la manière de faire, et là tout est si simple et limpide :)))

MERCI BEAUCOUP, ça va juste me simplifier énormément la vie.

Bravo pour avoir trouvé "transposé" je n'y avais jamais pensé.

Dungan
Répondre à Dungan

20


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 MM, le jeudi 8 novembre 2007 à 17:22:55
Bonjour,
Peux-ton utiliser la fonction transpose() pour ce genre d'opération ?
Répondre à MM
Excel : même étiquette lignes et colonnes (Résolu)Bonjour, Dans excel, logiquement, les lignes portent des numéros et les colonnes des lettres. depuis quelques jours, je constate que les colonnes portent également des chiffres, et je ne sais comment par quelle manip. j'aimerais tout simplement... www.commentcamarche.net/forum/affich-5707950-excel-meme-etiquette-lignes-et-colonnes
VBA excel insérer une ligne vide (Résolu)Bonjour, Je voudrais en vba excel insérer des lignes à chaque fois qu'une valeur d'une cellule change par rapport à celle du dessus. exemple : il faudrait que j'insére une ligne vide entre 15 et 20, entre 20 et 23, entre 23 et 26.... www.commentcamarche.net/forum/affich-4126535-vba-excel-inserer-une-ligne-vide
Servlet passer une ligne "\n" (Résolu)Bonjour, Dans ma servlet je mets un String dans une variable, et dans ce String je mets "\n" pour passer une ligne et quand j'affiche le message dans la page JSP il affiche tous sur une seule ligne. Je comprend pas pourquoi. Je fais comme ça dans... www.commentcamarche.net/forum/affich-7781217-servlet-passer-une-ligne-n
Figer une ligne dans un tableau ExcelPour figer la ligne 1 (par exemple) dans une feuille excel : Sélectionnez la ligne 2, Puis allez dans le menu "Fenêtres" et option "Figer les volets". www.commentcamarche.net/faq/sujet-7684-figer-une-ligne-dans-un-tableau-excel
Listes déroulantes simples avec ExcelDans votre tableau, vous souhaitez insérer un texte ou une valeur choisi dans une liste (déroulante). vous créez votre liste, ligne aprés ligne, sur votre feuille en cours ou sur une autre feuille du classeur en cours. vous la nommez : INSERTION... www.commentcamarche.net/faq/sujet-8674-listes-deroulantes-simples-avec-excel
EXCEL : La fonction INTERSECTIONVous avez un tableau constitué de lignes et de colonnes. Vous voulez connaitre la valeur de la cellule située à une intersection Ligne / Colonne de votre tableau.... Exemple : Votre tableau : - commence en C3, jusqu'en F3 ... pour les... www.commentcamarche.net/faq/sujet-8642-excel-la-fonction-intersection
Excel - Liste déroulante conditionnelle (Résolu)Bonsoir, Je voudrais arriver à créer sous Excel une liste déroulante dont le contenu affiché serait fonction de la valeur de la cellule d'avant (qui est elle-même une liste déroulante). Pour être plus clair, j'ai une liste de services... www.commentcamarche.net/forum/affich-4918759-excel-liste-deroulante-conditionnelle
Comparer 2 listes de 2 colonnes sur excel (Résolu)Bonjour, Je vous solicite pour le probléme suivant : Dans une feuille d'un classeur excel, je suis souhaite comparer deux données : Il s'agit en fait de comparer deux listes de Nom et Prénon ( 600 noms environs) La liste1 : En colonne A, les... www.commentcamarche.net/forum/affich-3205278-comparer-2-listes-de-2-colonnes-sur-excel
Faire un calcul de probabilité Avec excell ? (Résolu)Bonjour, Je voudrais faire une feuille avec Excell 2007 En 7 Colonnes et 198 lignes environs et lui faire faire une liste de probabilités avec 5 ou 7 cellules Mais voilà, il me dit que ma formule contient des erreurs ou alors des fois il me mets... www.commentcamarche.net/forum/affich-3995614-faire-un-calcul-de-probabilite-avec-excell
Télécharger KeePass Password Safe[] Aujourd'hui vous avez besoin de se rappeler beaucoup de mots de passe. Vous avez besoin d'un mot de passe pour l'ouverture du réseau de Windows, votre compte E-mail, mot de passe du ftp de votre page d’accueil, mots de passe en ligne etc…... www.commentcamarche.net/telecharger/telecharger-34055408-keepass-password-safe
Sennheiser CX 400Filaire, Cable 1.6 m,Sensibilité:113 dB/1mW,Impédance:16 ohm,Longueur du cable:1.6 m,Divers:Excellent passive attenuation of ambient noise,Contrôle du volume,,Page web du produit:Anglais,Technologie sans-fil:Filaire,Bande passante écouteurs:17-21000 Hz www.commentcamarche.net/guide-achat/sennheiser-cx-400-997209-fiche-technique
Sennheiser CX 95 StyleFilaire, Cable 1.6 m,Sensibilité:113 dB/1mW,Technologie sans-fil:Filaire,Page web du produit:Anglais,Longueur du cable:1.6 m,Divers:Excellent passive attenuation of ambient noise,Impédance:16 ohm,,Contrôle du volume,Bande passante écouteurs:17-22500 Hz www.commentcamarche.net/guide-achat/sennheiser-cx-95-style-997207-fiche-technique
Sennheiser CXL 400Filaire,Bande passante écouteurs:17-21000 Hz,Contrôle du volume,Divers:Excellent passive attenuation of ambient noise,Impédance:16 ohm,Sensibilité:113 dB/1mW,Type:Casque,Technologie sans-fil:Filaire,Page web du produit:Anglais www.commentcamarche.net/guide-achat/sennheiser-cxl-400-997213-fiche-technique
Toutes les réponses pour « [Excel]Passer une liste de ligne à colonne »