Convertion Tableau croisé en base de donnée

Bonjour à tous,

Je viens vers vous aujourd'hui car je dois mettre en place une base de donnée des coûts liés aux pointages dans mon entreprise (en h).

Je reçois des fichiers extraits de SAP (progiciel de gestion integrée) sous forme de tableau croisés (non dynamique) .

Je souhaite convertir ces fichiers en liste (ou base de données), donc mettre à plat ce tableau mais je rencontre quelques soucis.

--> (Si vous souhaitez bien comprendre il vaut mieux ouvrir le fichier en PJ )

J'ai bien réussi à l'aide d'une macro à le mettre a plat, cependant je n'arrive pas a conserver la disposition des première colonnes; et je génere des lignes pour tout les mois, y compris ceux qui ne comprennent pas de pointages (ce que je ne souhaite pas..).

J'ai mis un exemple dans le fichier en PJ de ce que souhaite obtenir

Merci d'avance pour votre aide!

PS : Je sais qu'il existe de nombreux sujet la dessus mais je n'arrive pas a obtenir ce que je souhaite

Vincent

Bonjour,

j'ai mis le résultat sur l'onglet "Sheet2"

à tester,

Sub test()
For n = 2 To Cells(Rows.Count, 1).End(xlUp).Row
 For i = 11 To Cells(2, Columns.Count).End(xlToLeft).Column
  If Cells(n, i) <> 0 And Cells(n, i) <> "…" Then
   With Sheets("Sheet2")
     n2 = .Cells(Rows.Count, 1).End(xlUp).Row + 1
    .Range("A" & n2 & ":J" & n2).Value = Range("A" & n & ":J" & n).Value
    .Range("K" & n2).Value = Cells(1, i).Value
    .Range("L" & n2).Value = Cells(n, i).Value
    End With
  End If
 Next i
Next n
End Sub

ps/ s'il faut mettre les pointillés, enlever la condition

And Cells(n, i) <> "…" 

Ca a l'air de fonctionner à l’exception de la ligne d'en-tête qui n'est pas recopiée mais pour ça je devrais m'en sortir .

Merci pour ton aide!

Rechercher des sujets similaires à "convertion tableau croise base donnee"