VBA pr glisser intitulé de colonne en ligne

Clarisse35 -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

Je cherche à obtenir un nouveau tableau sous Excel à partir d'un tableau existant.

Le tableau d'origine serait du type :

CENTRE ACTIVITE JANVIER FEVRIER MARS
Centre 1 Menuiserie 200 300 400

Le résultat que je souhaite obtenir serait d'avoir le même détail avec affichage des montants et des mois correspondant en lignes:

Centre 1 Menuiserie 200 JANVIER
Centre 1 Menuiserie 300 FEVRIER
Centre 1 Menuiserie 400 MARS

Existe t-il un code VBA pour résoudre cette problématique ?

Merci d'avance

3 réponses

  1. lasyl1 Messages postés 111 Statut Membre 50
     
    Bonjour

    Il y a une fonction Excel pour mettre la ligne en colonne ou inversément ..

    Sélectionnez la ligne à modifier.

    Copy.

    Allez sur la 1ére cellule de votre future colonne.

    Paste Special .. Transpose ( à cocher dans le bas du copiage spécial)

    voilà .
    0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    bonjour,
    c'est un peu plus compliqué

    en VBA
    les lignes 1 sont les intitulés (CENTRE ACTIVITE ...)
    le tableau initial en feuille 1 à partir de la ligne 2
    le tableau resultat en feuille 2 a partir de la ligne 2

    Option Explicit 
    
    Private Sub CommandButton1_Click() 
    Dim lif1 As Long, lif2 As Long, cof1 As Long 
    Dim Centre As String, Activite As String 
    Dim score As Long, mois As String 
    Dim nblif1 As Long 
      nblif1 = Sheets(1).Range("A65536").End(xlUp).Row 
      lif2 = 1 
      For lif1 = 2 To nblif1 
        Centre = Sheets(1).Cells(lif1, 1).Value 
        Activite = Sheets(1).Cells(lif1, 2).Value 
        For cof1 = 3 To 14 
          score = Sheets(1).Cells(lif1, cof1).Value 
          mois = Sheets(1).Cells(1, cof1).Value 
          lif2 = lif2 + 1 
          Sheets(2).Cells(lif2, 1).Value = Centre 
          Sheets(2).Cells(lif2, 2).Value = Activite 
          Sheets(2).Cells(lif2, 3).Value = score 
          Sheets(2).Cells(lif2, 4).Value = mois 
        Next cof1 
      Next lif1 
    End Sub


    est ce que ça repond a la question?

    voir fichier exemple

    http://www.cijoint.fr/cjlink.php?file=cj201101/cijIYndZt2.xls

    bonne suite
    0
  3. lasyl1 Messages postés 111 Statut Membre 50
     
    désolée .. cela dépasse mes connaissances ..

    Quelqu'un d'autre peut l'aider ?
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      CCM81 ( bonjour, ca va ?) répondait à Clarisse et non à lasyl...
      0
    2. lasyl1 Messages postés 111 Statut Membre 50
       
      ok.. désolée . ai rien dit ..
      0
    3. ccm81 Messages postés 11033 Statut Membre 2 434
       
      re
      > lasyl1 effectivement c'est a clarisse 35 que la 2° partie de mon post etait adressée
      > michel_m. merci, pour le moment tout va bien ... j'espère qu'il en est de même pour toi
      cordialement
      0