Transposition de colonne en ligne

Bonjour,

Je voudrais a l'aide d'une formule transposer des colonnes en ligne.

Malheureusement je ne parviens pas a le faire. j'avais penser a Index match mais après plusieurs tentatives ca ne fonctionne pas. le Sumproduct non plus.

Est-ce que l'un de vous aurais une idée de formule sans passer par le VBA svp?

D'avance je vous remercie pour votre aide précieuse.

J'ai joint en annexe un explicative excel dans le cas ou ma demande ne serait pas Claire.

Encore merci

Joaquim

24request-forum.xlsx (10.47 Ko)

Bonjour,

Following your Request ... Sans Macro ... ci-joint ton fichier test ...

Bonsoir le forum

Bonsoir le fil, bonsoir joaquim,

Si tu veux transposer occasionnellement tes colonnes en lignes, tu copie l'ensemble de tes données et tu colle en utilisant clic droit "transposer"

Bonsoir le Forum

Bonsoir James

J'ai une question pour toi James pourquoi avoir mis cette formule en I2

=DECALER($A$2;(ENT((ENT(LIGNE()-2))/4)*1);0) 

je ne suis pas très adepte des formules excel, je suis plus attiré par le VBA, mais perso j'aurais utiliser la formule :

=DECALER($A$2;(ENT((LIGNE()-2)/4));0)

a quoi sert le "*1" et le deuxième ENT()

merci pour ta réponse... car on n'a jamais fini d'apprendre....

Fred

Bonsoir le forum,

joaquim, c'est sympa une chtite macro

Sub transpose()
Dim a, b(), i As Long, j As Long, n As Long
    Application.ScreenUpdating = True
    With Sheets(1).Range("a1").CurrentRegion
        a = .Value
        ReDim b(1 To .Cells.Count, 1 To 4)
    End With
    n = 1: b(1, 1) = a(1, 1): b(1, 2) = a(1, 2)
    For i = 2 To UBound(a, 1)
        For j = 3 To UBound(a, 2)
            n = n + 1
            b(n, 1) = a(i, 1)
            b(n, 2) = a(i, 2)
            b(n, 3) = a(1, j)
            b(n, 4) = a(i, j)
        Next
    Next
    With Sheets(2).Cells(1).Resize(n, UBound(b, 2))
        .CurrentRegion.Clear
        .Value = b
        With .CurrentRegion
            .Font.Name = "calibri"
            .Font.Size = 10
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .Borders(xlInsideVertical).Weight = xlThin
            .BorderAround Weight:=xlThin
            With .Rows(1)
                .Font.Size = 11
                .Interior.ColorIndex = 43
                .BorderAround Weight:=xlThin
            End With
            .Columns.AutoFit
        End With
    End With
    Application.ScreenUpdating = True
End Sub

klin89

fred2406 a écrit :

a quoi sert le "*1" et le deuxième ENT()

merci pour ta réponse... car on n'a jamais fini d'apprendre....

Fred

Salut Fred ...

A rien ...!!!

Tu as totalement raison ... J'ai testé sur la droite les formules avant de les insérer ... sans vérification ...

merci a tous pour vos réponses.

je pense que je vais devoir metre a VBA

bonne journée a vous

Bonjour,

Merci pour tes remerciements ...

Accessoirement ... c'est toi qui a fixé la contrainte ... sans macro ...

Rechercher des sujets similaires à "transposition colonne ligne"