Bonjour à tous,
C'est mon premier post sur le forum J'ai un gros fichier qui m'est exporté et pour lequel je dispose de milliers de ligne (une ligne par numéro, associé à une date d'inscription) et qqls centaines de colonnes (qui correspondent chacune à une date). Ce qui me donne une grosse matrice dans laquelle quelques cellules sont remplies avec des "montants payés".
Si on le lit manuellement on obtient des associations (Numéro ; Date d'inscription ; Date paiement ; Montant). Il peut y avoir plusieurs paiements (donc plusieurs fois le même numéro).
Le fichier étant très lourd, les opérations sont trop lourdes pour les formules matricielles d'excel et je souhaites passer par du VBA, mais je suis pas un grand champion !
Je voudrais obtenir sur ma seconde feuille, une table (Numéro ; Date d'inscription ; Date paiement ; Montant) pour chaque montant non vide.
J'ai essayé la chose suivante, sans succès :
Sub Traitement()
Dim xlSheet As Excel.Worksheet
Set xlSheet = Worksheets("Resume")
Dim i As Long
Dim maPlage As Range
Dim DernLigne As Long, DernColonne As Integer
Dim c As Range
DernLigne = Range("A" & Rows.Count).End(xlUp).Row
DernColonne = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
Set maPlage = Range(Cells(2, 3), Cells(DernLigne, DernColonne))
Set i = 2
For Each c In maPlage
If c <> "" Then
xlSheet.Cells(i, 1) = Cell(ActiveCell.Row, 1)
xlSheet.Cells(i, 2) = Cell(ActiveCell.Row, 2)
xlSheet.Cells(i, 3) = Cell(1, ActiveCell.Column)
xlSheet.Cells(i, 4) = c
i = i + 1
End If
End Sub
Je vous mets un exemple tronqué en pj pour que vous puissiez avoir une idée!
Merci beaucoup pour votre aide