Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/05/2007, 17h05   #1
Invité de passage
 
Inscription : avril 2007
Messages : 11
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 11
Points : 2
Points : 2
Par défaut transposition d'un tableau de colonnes en lignes

Bonjour,

J'ai encore un petit soucis de tableau.

J'aimerais que mes colonnes deviennent des lignes

colonne 1 | colonne 2 | colonne 3| colonne 4
info 1 | info 2 | info 3 | info 4
crit 1 | crit 2 | crit 3 | crit 4 |

colonne 1 | info 1 | crit 1
colonne 2 | info 2 | crit 2
colonne 3 | info 3 | crit 3
colonne 4 | info 4 | crit 4

Si quelqu'un a une idée...

Merci d'avance..
Prissou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2007, 13h12   #2
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Pour transposer ton tableau, tu as deux solutions, passer par Excel, qui a dans Collage spécial un paramètre "Transposé", ou en utilisant une macro qui fait ça en mettant en colonne les données lues par ligne. Par exemple :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Option Explicit
 
Sub TransposerTableauWord()
Dim TabDonnées(), NbCol, NbLig, NoLig, NoCol, i
    With ActiveDocument.Tables(1)
        NbCol = .Columns.Count
        NbLig = .Rows.Count
        ReDim TabDonnées(NbLig * NbCol)
        For NoLig = 1 To NbLig
            For NoCol = 1 To NbCol
                .Cell(NoLig, NoCol).Select
                i = i + 1
                TabDonnées(i) = Left(Selection.Text, _
                Len(Selection.Text) - 2) 'supprime crlf
            Next
        Next
    End With
    'Placement en fin de doc -> on pourrait se positionner sur un signet
    Selection.EndKey Unit:=wdStory
    Selection.TypeParagraph
    ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=NbCol, NumColumns:= _
        NbLig, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
        wdAutoFitFixed
    i = 0
    With ActiveDocument.Tables(2)
        For NoLig = 1 To NbLig
            For NoCol = 1 To NbCol
                i = i + 1
                .Cell(NoCol, NoLig).Select
                Selection.Text = TabDonnées(i)
                DoEvents
            Next
        Next
    End With
    'ActiveDocument.Tables(1).Delete 'suppression du tableau d'origine
End Sub
Assure-toi du nom de ton tableau
A+
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2007, 16h17   #3
Invité de passage
 
Inscription : avril 2007
Messages : 11
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 11
Points : 2
Points : 2
Je vous remercis.
Mais finallement j'avais trouvé d'une autre façon. Mais je n'ai pas pu vous en faire part.

Merci Priscilla
Prissou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2007, 09h04   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 351
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 351
Points : 29 264
Points : 29 264
Tu peux toujours nous faire part de la solution utilisée, elle pourrait être utile à un autre membre.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2007, 18h21   #5
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Hello Heureux Oli,
J'ai vu passer la réponse sur un autre post. Il existerait une fonction qui fait ça... dans Excel
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2007, 19h29   #6
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 351
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 351
Points : 29 264
Points : 29 264
Lut ouskel'n'or
On peut le faire avec Access aussi, la solution est dans les codes sources.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h45.


 
 
 
 
Partenaires

Hébergement Web