XL 2010 Transposer une plage "Comprendre"

Goufra

XLDnaute Occasionnel
Bonjour à vous,

Je fais des gammes et j'essaie de comprendre.

Dans l'exemple sub test 1
Avec ce code :
tablo = Application.Index(x, 0)

Je transpose la plage sans avoir besoin d'utiliser une boucle (exemple test2)

Je ne comprends pas le déroulé ==> Application.Index(x, 0)​



Dans l'attente que vous m'aidiez à comprendre je vous souhaite une bonne fin d'après-midi
jc Goufra
 

Pièces jointes

  • Goufra TestTranspose.xlsm
    19.5 KB · Affichages: 46
  • Goufra TestTranspose.xlsm
    19.5 KB · Affichages: 26

Lone-wolf

XLDnaute Barbatruc
Re

Beaucoup plus simple et prend toutes les colonnes sans Application.index

VB:
Sub Transposer_colonnes_en_lignes()
Dim derlig&, tb, tbl
    'tableau à 4 dimensions
    With Feuil2
        .Range(Columns("F"), Columns(Columns.Count)).ClearContents
        derlig = .Range("a" & Rows.Count).End(xlUp).Row
        tb = .Range("a1:d" & derlig).Value    'x lignes / 4 colonnes
        tbl = Application.Transpose(tb)    
        .Range("f1").Resize(UBound(tbl, 1), UBound(tbl, 2)) = tbl
    End With
End Sub
 
Dernière édition:

laetitia90

XLDnaute Barbatruc
bonjour Goufra ,wolf:)
Lone;),dans ton exemple tu transpose colonne en ligne
on peut faire egalement
VB:
Dim t
t = Range("a1:d" & Cells(Rows.Count, 1).End(3).Row)
[f1].Resize(UBound(t, 2), UBound(t, 1)) = Application.Transpose(t)

ou...... attention a CurrentRegion

Dim t
t = [a1].CurrentRegion
[f1].Resize(UBound(t, 2), UBound(t, 1)) = Application.Transpose(t)
 

Goufra

XLDnaute Occasionnel
Bosoir Laetitia et lone wolf,
Je vous prie de m'excuser pour ce retard à vous répondre .
Merci pour votre aide et vos propositions de code à tous les deux.

Lone wolf, oui je suis allé sur le site que tu indiques.
Avec ton renvoi sur index j'ai pigé le pb du zéro
Je vous souhaite une très bonne soirée à tous les deux
JC Goufra
 

Discussions similaires