Transposer plusieurs lignes dans la meme colonne

bonjour à tous,

besoin d'aide svp

je cherche a transposer plusieurs lignes dans la meme colonne

je n'arrive pas à le faire en automatique (VBA)

Je vous joint mon fichier afin d'essayer de mieux vous expliquer

je souhaiterai que les cellules C2,D2,E2,F2 soit dans la meme colonne (par exemple en Feuil 3 colonne B)

Ensuite il faut coller C3,D3,E3,F4 a la suite de la serie d'avant soit en Feuil 3 colonne B et ainsi de suite

d'avance merci à tous pour votre aide

75bowling.xlsm (40.27 Ko)

Bonjour Bobo, bonjour le forum,

Si j'ai bien compris, le code ci-dessous devrait convenir :

Sub Macro2()
Dim OS As Worksheet 'déclare la variable OS (Onglet Source)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim DL As Integer 'déclare la variable DL (Cerdière Ligne)
Dim TC As Variant 'déclare la variable TC (Tableau de Cellules)
Dim TL() As Variant 'déclare la variable TL (Tableau de Lignes)
Dim I As Integer 'déclare la variable I (Incrément)
Dim J As Integer 'déclare la variable J (incrément)
Dim K As Integer 'déclare la variable K (incrément)

Set OS = Sheets("Feuil1") 'définit l'onlget source OS
Set OD = Sheets("Feuil3") 'définit l'onlget destination OD
DL = OS.Cells(Application.Rows.Count, 3).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 3 (=C) de l'onglet OS
TC = OS.Range("C2:F" & DL) 'définit la tableau de cellules TC
For I = 1 To UBound(TC, 1) 'boucle 1 : sur toutes les lignes I du tableau de cellules TC
    For J = 1 To UBound(TC, 2) 'boucle 2 : sur toutes les colonnes J du tableau de cellules TC
        ReDim Preserve TL(K) 'redimensionne le tableau de lignes TL
        TL(K) = TC(I, J) 'récupère dans TL(K) la valeur ligne I colonne J de TC
        K = K + 1 'incrémente K
    Next J 'prochaine colonne de la boucle 2
Next I 'prochaine ligne de la boucle 1
'renvoie dans B1 redimensionnée de l'onglet OD, le tableau TL transposé
OD.Range("B1").Resize(UBound(TL) + 1, 1) = Application.Transpose(TL)
End Sub

Merci bien

je test ca demain et je te tiens au courant

en tout cas merci pour ta réponse

Salut,

C'est good ca fonctionne parfaitement bien !

Un grand Merci

Bonjour,

Je rouvre ce surjet qui date un peu.

J'ai voulu réutiliser le code ci dessous en l'adaptant à mon cas. Cependant lorsque je j'utilise la macro, j'ai une erreur 6 dépassement de capacité.

Etant très limité en vba, je ne sais l'expliquer.

Merci de votre aide.

Bonsoir Nico,

Beaucoup trop de cellules vide !... J'ai rajouter une condition pour réduire le nombre de cellules traitées.

Le code :

Sub Macro1()
Dim OS As Worksheet 'déclare la variable OS (Onglet Source)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim DL As Integer 'déclare la variable DL (Cerdière Ligne)
Dim TC As Variant 'déclare la variable TC (Tableau de Cellules)
Dim TL() As Variant 'déclare la variable TL (Tableau de Lignes)
Dim I As Long 'déclare la variable I (Incrément)
Dim J As Integer 'déclare la variable J (incrément)
Dim K As Long 'déclare la variable K (incrément)

Set OS = Sheets("Feuil1") 'définit l'onlget source OS
Set OD = Sheets("Feuil2") 'définit l'onlget destination OD
DL = OS.Cells(Application.Rows.Count, 363).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 363 (=MY) de l'onglet OS
TC = OS.Range("B1:MY" & DL) 'définit la tableau de cellules TC
For I = 1 To UBound(TC, 1) 'boucle 1 : sur toutes les lignes I du tableau de cellules TC
    For J = 1 To UBound(TC, 2) 'boucle 2 : sur toutes les colonnes J du tableau de cellules TC
        If TC(I, J) <> "" Then
            ReDim Preserve TL(K) 'redimensionne le tableau de lignes TL
            TL(K) = TC(I, J) 'récupère dans TL(K) la valeur ligne I colonne J de TC
            K = K + 1 'incrémente K
        End If
    Next J 'prochaine colonne de la boucle 2
Next I 'prochaine ligne de la boucle 1
'renvoie dans B1 redimensionnée de l'onglet OD, le tableau TL transposé
OD.Range("B1").Resize(UBound(TL) + 1, 1) = Application.Transpose(TL)
End Sub

Merci beaucoup ThauThème ça marche nickel

Rechercher des sujets similaires à "transposer lignes meme colonne"