Transpose Donnée

xvella

XLDnaute Occasionnel
Bonjour.

Je suis dans le domaine du contrôle qualité et j'ai un souci de transposition de donnée ou déplacement.

En bref,'y a quelque chose que je ne sais pas faire.

Pour faire simple j'ai fait un fichier ou tout est expliquer. [file name=TransposeD.zip size=7794]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/TransposeD.zip[/file]

Merçi A+.

Bonne Journée.
 

Pièces jointes

  • TransposeD.zip
    7.6 KB · Affichages: 17

N_Christian

XLDnaute Occasionnel
Bonjour le fil, Marc et Xvella

Un essais avec des tests conditionnels dans ta feuille pour P10 et P13.. par contre je ne sais pas si les machines sont affectées en dur ou si cela peut changer.. tu regardes ....tu peux même jouer sur les tests..si j'ai mal compris ton souhait..

A+ Christian [file name=TransposeD_20050912231715.zip size=8098]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/TransposeD_20050912231715.zip[/file]
 

Pièces jointes

  • TransposeD_20050912231715.zip
    7.9 KB · Affichages: 19

CBernardT

XLDnaute Barbatruc
Bonjour le Xvella, Marc77 et N_Christian,

Un essai par macro.

1- Copie de la zone 'T43:U48' de l'exemple donné pour explication ;
2- Collage des valeurs avec tranposition sur la zone 'P89:U90' ;
3- Test pour validation de l'inversion Droite/Gauche ;
4- Définition des variables sources gauche et droite ;
5- Copie inversée des variables sur les zones cibles ;
6- La mise en forme est à effectuer ensuite.

Sub TranspOrdre()
Dim MyLeft As Variant, MyRight As Variant

'Copie des valeurs
Sheets('Explication').Range('T43:U48').Copy
Sheets('Explication').Range('P89').PasteSpecial Paste:=xlPasteValues, Transpose:=True
Application.CutCopyMode = False
'Test pour inversion gauche/Droite
If Sheets('Explication').Range('P89') = 'DED' Then
'Définition des variables
MyLeft = Sheets('Explication').Range('P89:R90')
MyRight = Sheets('Explication').Range('S89:U90')
'Inversion gauche/Droite
Sheets('Explication').Range('P89:R90') = MyRight
Sheets('Explication').Range('S89:U90') = MyLeft
End If
End Sub

Cordialement

Bernard
 

xvella

XLDnaute Occasionnel
Bonjour,CBernardT, Marc77 et N_Christian,

Cela marche dans le cas 'DED' mais le problême reste puisque les valeurs DEG,DMG,DIG,DED,DMD et DID sont des données numériques:
12-11-13-12.5-10.6-15.2

Et surtout j'ai besoin que cela reste actif en permanence ou actif sur un clic bouton.

J'ai due mal me faire comprendre dans l'exemple.

Merçi,à tous les trois pour votre aide.

Bonne Journée.

A+
 

Discussions similaires