[Excel] repartir une colonne sur plusieurs colonnes

splintermik -  
 Utilisateur anonyme -
Bonjour,
je voudrais savoir, sur excel, comment prend une colonne, et la repartir en plusieurs, sur plusieurs colonnes , mais pas bêtement un copier coller qui me ferais d'es doublons

par exemple, j'ai une colonne contenant 1000 ligne, et je souhaiterais repartir ces 1000 ligne , sur 40 colonnes

j'ai chercher mais ya pas vraiment d'explication, j'ai trouver des truc sur "convertir" mais ca fait juste un copier coller

voila, merci :)

3 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Bonjour,

    A l'arrache... en macro :
    Sub deplac()
    Dim Col As Integer
    Dim limit As Integer
    Dim nbC As Integer
    
    limit = 25
    nbC = 0
    Col = 2 ' colonne B
    lig = 0
    
    'On boucle sur les 1000 cellules à partir de la 26eme
    For i = limit + 1 To 1000
     With ActiveSheet
       nbC = nbC + 1
       If nbC = limit + 1 Then
        nbC = 1
        Col = Col + 1
        lig = 0
       End If
       lig = lig + 1
       .Cells(lig, Col).Value = .Cells(i, 1).Value
       .Cells(i, 1).Value = ""
     End With
    
    Next
    
    End Sub
    


    3
    1. splintermik
       
      Merci je vais tester ça :D

      oui le macro me servira plusieurs fois, j'aurais juste a ajuster le nombre de ligne présent dans la 1ere colonnes.
      0
  2. Utilisateur anonyme
     
    Bonjour splintermik,

    Dans ce Fichier Excel 2007, la macro Dispatch() est dans Module1 ;
    nblig : nombre de lignes pour chaque colonne : 25 ; c'est le seul
    nombre à changer éventuellement.

    La colonne A contient 1012 données => 1012 lignes.
    dlig (dernière ligne) sera donc égal au départ à 1012.

    Fais < Ctrl >< d > : ça lance la macro Dispatch => tes 1012 lignes
    sont réparties sur autant de colonnes de 25 lignes que nécessaire.

    1000 données, ça fait exactement 40 colonnes de 25 lignes pleines.
    1012 données : idem + une 41ème colonne de 12 données.

    Attention : après chaque copie de données au bon emplacement,
    la macro supprime les lignes des données qui viennent d'être
    copiées ; donc cette macro ne doit être utilisée que si seule
    la colonne A contient des données, et à partir de A1.

    Dis-moi ce que tu en penses, et n'hésites pas à me demander
    plus d'infos si besoin.

    Cordialement.  😊
    0
  3. Utilisateur anonyme
     
    Bonjour splintermik,

    Tu as une colonne de 1000 lignes ; si tu veux la répartir sur
    40 colonnes, ça te fera donc 25 colonnes de 40 lignes.

    Soit tu le fais manuellement par 24 opérations copier / coller
    (car inutile à faire pour ta 1ère colonne de 40 lignes, qui
    restera à la même place) ; soit tu le fais par une macro.

    Si les 24 copier / coller sont faits correctement, il n'y aura
    pas de doublons ; ou alors, c'est qu'il y en avait déjà dans
    ta colonne initiale de 1000 lignes.

    Dans ce cas, fais d'abord dessus une extraction sans doublons
    pour les éliminer ; et si tu as éliminé mettons 40 doublons,
    ça te fait une colonne de 40 lignes en moins à copier / coller !
    Quelle chance tu as : il ne te reste plus que 23 opérations de
    copier / coller à faire !  😉

    À toi de choisir entre manuellement ou par macro VBA !

    Cordialement.  😊
     
    -1
    1. splintermik
       
      salut, merci de t'as réponse, il n'y a pas de doublon, et oui si y'a pas une façon plus simple et rapide je le ferais a la main,

      existe t'il des macro déjà fait? : )
      0
      1. Utilisateur anonyme > splintermik
         
        Non, pas de macro déjà faite ! Et ça dépend de l'emplacement exact
        de tes données ! Puisqu'il n'y a pas de doublons, je te conseille de
        commencer par le bas : fais un 1er copier / coller des 40 dernières
        lignes en colonne 25 ; puis un 2ème copier / coller des 40 dernières
        lignes en colonne 24, etc... À moins qu'on te propose une macro
        si tu donnes les emplacements exacts ; mais cette macro ne servira
        qu'une fois, alors est-ce bien la peine ? Cordialement.  😊
        0