OVH Cloud OVH Cloud

Transposer tableau

9 réponses
Avatar
Martin
Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres (comme
transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais je
voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin

9 réponses

Avatar
below
bonsoir
Si tu sais le faire en excel, copie ton tableau word en excel, transpose-le,
et copie le transposé dans word.
Peux-tu me dire comment on transpose en excel ?
Merci

"Martin" a écrit dans le message de news:

Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres (comme
transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais je
voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin




Avatar
Martin
Salut Below

J'ai essayer et ca fonctionne mais je voulais simplement savoir si word
avait le même genre de possibilité.
Pour le faire, sélectionne tableau - copier, puis collage spéciale, cocher
transposer

Salut
Martin

"below" a écrit dans le message de news:
#4T#
bonsoir
Si tu sais le faire en excel, copie ton tableau word en excel,
transpose-le,

et copie le transposé dans word.
Peux-tu me dire comment on transpose en excel ?
Merci

"Martin" a écrit dans le message de news:

Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres
(comme


transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais je
voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin








Avatar
below
Merci Martin
Mais désolé je n'ai jamais vu la transposition matricielle en Word que
j'écume depuis longtemps
Below
"Martin" a écrit dans le message de news:
%
Salut Below

J'ai essayer et ca fonctionne mais je voulais simplement savoir si word
avait le même genre de possibilité.
Pour le faire, sélectionne tableau - copier, puis collage spéciale, cocher
transposer

Salut
Martin

"below" a écrit dans le message de news:
#4T#
bonsoir
Si tu sais le faire en excel, copie ton tableau word en excel,
transpose-le,

et copie le transposé dans word.
Peux-tu me dire comment on transpose en excel ?
Merci

"Martin" a écrit dans le message de news:

Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres
(comme


transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais je
voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin












Avatar
Circé
Bonsoir,

Faut pas trop en demander à Word quand même, ce n'est pas un tableur... Sinon, à quoi servirait Excel ?... :-D)))))

Circé

Martin a utilisé son clavier pour écrire :
Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres (comme
transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais je
voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin


Avatar
Guy Moncomble
Bonjour à tous,
dans le message ,

| Bonsoir,
|
| Faut pas trop en demander à Word quand même, ce n'est pas un
| tableur... Sinon, à quoi servirait Excel ?... :-D)))))
|
| Circé
A rien !

Rien que pour rire, une macro superfétatoire :

==
Public Sub TransposeTableau()
Dim iBoucle As Integer, jBoucle As Integer, Separateur As String
Dim NbLignes As Integer, NbCol As Integer, Tampon As String, FormatAuto,
MyRange As Range
Dim ParaApplyStyleHeadingRows, ParaApplyStyleLastRow,
ParaApplyStyleFirstColumn, ParaApplyStyleLastColumn
'On suppose que le tableau est sélectionné, mais on vérifie quand même
If Selection.Information(wdWithInTable) = False Then
MsgBox "D'abord se positionner dans un tableau", vbOKOnly +
vbCritical, "Transposer un tableau"
Exit Sub
End If

'Mémoriser le format du tableau
FormatAuto = Selection.Tables(1).Style
ParaApplyStyleHeadingRows = Selection.Tables(1).ApplyStyleHeadingRows
ParaApplyStyleLastRow = Selection.Tables(1).ApplyStyleLastRow
ParaApplyStyleFirstColumn = Selection.Tables(1).ApplyStyleFirstColumn
ParaApplyStyleLastColumn = Selection.Tables(1).ApplyStyleLastColumn
'Mémoriser l'emplacement du tableau
Set MyRange = Selection.Range
NbLignes = Selection.Information(wdMaximumNumberOfRows)
NbCol = Selection.Information(wdMaximumNumberOfColumns)
'On suppose que l'on ne va pas renconter ce caractère !
Separateur = Chr(8)
'On initialise la chaîne
Tampon = ""
For jBoucle = 1 To NbCol
For iBoucle = 1 To NbLignes
Tampon = Tampon &
fstrTronqueChaineADroite(MyRange.Tables(1).Cell(iBoucle,
jBoucle).Range.Text, 2)
If iBoucle < NbLignes Then
Tampon = Tampon & Separateur
ElseIf iBoucle = NbLignes And jBoucle < NbCol Then
Tampon = Tampon & Chr(13)
End If
Next iBoucle
'On a fini de copier un colonne
Next jBoucle
'On copie après le tableau original
Selection.Tables(1).Select
Selection.Collapse wdCollapseEnd
Selection.TypeParagraph
Selection.InsertAfter Tampon
'On convertit
Selection.ConvertToTable Separateur, NbCol, NbLignes
'FormatAuto
With Selection.Tables(1)
.Style = FormatAuto
.ApplyStyleHeadingRows = ParaApplyStyleHeadingRows
.ApplyStyleLastRow = ParaApplyStyleLastRow
.ApplyStyleFirstColumn = ParaApplyStyleFirstColumn
.ApplyStyleLastColumn = ParaApplyStyleLastColumn
End With
End Sub

Public Function fstrTronqueChaineADroite(Entree As String, NbChar As
Integer) As String
If Len(Entree) >= NbChar Then fstrTronqueChaineADroite = Left(Entree,
Len(Entree) - NbChar)
End Function


OK, je ===>
--
A+

G.M. MVP Word
Avatar
Guy Moncomble
Bonjour à tous,
dans le message ,

| Bonsoir,
|
| Faut pas trop en demander à Word quand même, ce n'est pas un
| tableur... Sinon, à quoi servirait Excel ?... :-D)))))
|
| Circé

A rien !

Rien que pour rire, une macro superfétatoire :

==
Public Sub TransposeTableau()
Dim iBoucle As Integer, jBoucle As Integer, Separateur As String
Dim NbLignes As Integer, NbCol As Integer, Tampon As String, FormatAuto,
MyRange As Range
Dim ParaApplyStyleHeadingRows, ParaApplyStyleLastRow,
ParaApplyStyleFirstColumn, ParaApplyStyleLastColumn
'On suppose que le tableau est sélectionné, mais on vérifie quand même
If Selection.Information(wdWithInTable) = False Then
MsgBox "D'abord se positionner dans un tableau", vbOKOnly +
vbCritical, "Transposer un tableau"
Exit Sub
End If

'Mémoriser le format du tableau
FormatAuto = Selection.Tables(1).Style
ParaApplyStyleHeadingRows = Selection.Tables(1).ApplyStyleHeadingRows
ParaApplyStyleLastRow = Selection.Tables(1).ApplyStyleLastRow
ParaApplyStyleFirstColumn = Selection.Tables(1).ApplyStyleFirstColumn
ParaApplyStyleLastColumn = Selection.Tables(1).ApplyStyleLastColumn
'Mémoriser l'emplacement du tableau
Set MyRange = Selection.Range
NbLignes = Selection.Information(wdMaximumNumberOfRows)
NbCol = Selection.Information(wdMaximumNumberOfColumns)
'On suppose que l'on ne va pas renconter ce caractère !
Separateur = Chr(8)
'On initialise la chaîne
Tampon = ""
For jBoucle = 1 To NbCol
For iBoucle = 1 To NbLignes
Tampon = Tampon &
fstrTronqueChaineADroite(MyRange.Tables(1).Cell(iBoucle,
jBoucle).Range.Text, 2)
If iBoucle < NbLignes Then
Tampon = Tampon & Separateur
ElseIf iBoucle = NbLignes And jBoucle < NbCol Then
Tampon = Tampon & Chr(13)
End If
Next iBoucle
'On a fini de copier un colonne
Next jBoucle
'On copie après le tableau original
Selection.Tables(1).Select
Selection.Collapse wdCollapseEnd
Selection.TypeParagraph
Selection.InsertAfter Tampon
'On convertit
Selection.ConvertToTable Separateur, NbCol, NbLignes
'FormatAuto
With Selection.Tables(1)
.Style = FormatAuto
.ApplyStyleHeadingRows = ParaApplyStyleHeadingRows
.ApplyStyleLastRow = ParaApplyStyleLastRow
.ApplyStyleFirstColumn = ParaApplyStyleFirstColumn
.ApplyStyleLastColumn = ParaApplyStyleLastColumn
End With
End Sub

Public Function fstrTronqueChaineADroite(Entree As String, NbChar As
Integer) As String
If Len(Entree) >= NbChar Then fstrTronqueChaineADroite = Left(Entree,
Len(Entree) - NbChar)
End Function


OK, je ===>
--
A+

G.M. MVP Word
Avatar
Martin
OK merci à tous!

"below" a écrit dans le message de news:
OZoD#
Merci Martin
Mais désolé je n'ai jamais vu la transposition matricielle en Word que
j'écume depuis longtemps
Below
"Martin" a écrit dans le message de news:
%
Salut Below

J'ai essayer et ca fonctionne mais je voulais simplement savoir si word
avait le même genre de possibilité.
Pour le faire, sélectionne tableau - copier, puis collage spéciale,
cocher


transposer

Salut
Martin

"below" a écrit dans le message de news:
#4T#
bonsoir
Si tu sais le faire en excel, copie ton tableau word en excel,
transpose-le,

et copie le transposé dans word.
Peux-tu me dire comment on transpose en excel ?
Merci

"Martin" a écrit dans le message de news:

Bonjour

Est-il possible avec un tableau word, d'inversé le sens des titres
(comme


transposer dans excel)?
En fait, ma première ligne de mon tableau contient mes titres, mais
je




voudrais changer pour que ce soit ma première colone de gauche.

Merci à l'avance

P.S. Word 2000 windows 2000

Martin
















Avatar
Anacoluthe
Bonjour !

'Guy Moncomble' nous a écrit ...
Public Sub TransposeTableau()


Joli Guy !
Et heureux de te voir de retour parmi nous en général
et parmi les macroteurs en particulier !!!

Et pour être sûr que tu restes avec nous je me suis
dépêché de tester ta macro sur un tableau comportant
deux affreuses cellules fusionnées...
Oui pardon je sais c'est du vice à l'état brut !
Mais tu nous as tant manqué :-) Faut bien te relancer un peu... :-D

Anacoluthe
« Les départs ne comptent pas, seuls les retours méritent une larme. »
- Christian MISTRAL

Avatar
AB
Chapeau Guy !
Les neurones carburent toujours autant, je vois !
André

"Guy Moncomble" <http://cerbermail.com/?QOoOlzu81P> a écrit dans le message
de news: %
Bonjour à tous,
dans le message ,

| Bonsoir,
|
| Faut pas trop en demander à Word quand même, ce n'est pas un
| tableur... Sinon, à quoi servirait Excel ?... :-D)))))
|
| Circé

A rien !

Rien que pour rire, une macro superfétatoire :

== >
Public Sub TransposeTableau()
Dim iBoucle As Integer, jBoucle As Integer, Separateur As String
Dim NbLignes As Integer, NbCol As Integer, Tampon As String, FormatAuto,
MyRange As Range
Dim ParaApplyStyleHeadingRows, ParaApplyStyleLastRow,
ParaApplyStyleFirstColumn, ParaApplyStyleLastColumn
'On suppose que le tableau est sélectionné, mais on vérifie quand même
If Selection.Information(wdWithInTable) = False Then
MsgBox "D'abord se positionner dans un tableau", vbOKOnly +
vbCritical, "Transposer un tableau"
Exit Sub
End If

'Mémoriser le format du tableau
FormatAuto = Selection.Tables(1).Style
ParaApplyStyleHeadingRows = Selection.Tables(1).ApplyStyleHeadingRows
ParaApplyStyleLastRow = Selection.Tables(1).ApplyStyleLastRow
ParaApplyStyleFirstColumn = Selection.Tables(1).ApplyStyleFirstColumn
ParaApplyStyleLastColumn = Selection.Tables(1).ApplyStyleLastColumn
'Mémoriser l'emplacement du tableau
Set MyRange = Selection.Range
NbLignes = Selection.Information(wdMaximumNumberOfRows)
NbCol = Selection.Information(wdMaximumNumberOfColumns)
'On suppose que l'on ne va pas renconter ce caractère !
Separateur = Chr(8)
'On initialise la chaîne
Tampon = ""
For jBoucle = 1 To NbCol
For iBoucle = 1 To NbLignes
Tampon = Tampon &
fstrTronqueChaineADroite(MyRange.Tables(1).Cell(iBoucle,
jBoucle).Range.Text, 2)
If iBoucle < NbLignes Then
Tampon = Tampon & Separateur
ElseIf iBoucle = NbLignes And jBoucle < NbCol Then
Tampon = Tampon & Chr(13)
End If
Next iBoucle
'On a fini de copier un colonne
Next jBoucle
'On copie après le tableau original
Selection.Tables(1).Select
Selection.Collapse wdCollapseEnd
Selection.TypeParagraph
Selection.InsertAfter Tampon
'On convertit
Selection.ConvertToTable Separateur, NbCol, NbLignes
'FormatAuto
With Selection.Tables(1)
.Style = FormatAuto
.ApplyStyleHeadingRows = ParaApplyStyleHeadingRows
.ApplyStyleLastRow = ParaApplyStyleLastRow
.ApplyStyleFirstColumn = ParaApplyStyleFirstColumn
.ApplyStyleLastColumn = ParaApplyStyleLastColumn
End With
End Sub

Public Function fstrTronqueChaineADroite(Entree As String, NbChar As
Integer) As String
If Len(Entree) >= NbChar Then fstrTronqueChaineADroite = Left(Entree,
Len(Entree) - NbChar)
End Function


OK, je ===>
--
A+

G.M. MVP Word