Insertion de valeur dans un tableau

yuplop

XLDnaute Nouveau
Bonjour,

Je viens vers vous car je galère:
J'ai créé un formulaire pour pouvoir créer de nouveau client. A partir de ce formulaire, une fiche cliente est renseigné automatiquement avec les informations du formulaire.

Ce formulaire contient aussi des intitulé de facture avec leur montant et leur date de facturation.

En plus de la fiche client renseigné automatiquement, une nouveau classeur doit être renseigné avec les montant des factures en fonction de la date.

Pour l'instant, ce nouveau classeur s'ouvre sur le bon onglet, sur la dernière ligne disponible, le nom du client est renseignée en colonne A, les intitulés de facture en colonne B (image "tab3.jpg" en pièce jointe)

tab3.jpg


Je n'arrive pas à insérer le montant des différentes factures en fonction des dates saisies dans le formulaire et des intitulé s des factures

tab1.jpg



VB:
Private Sub CommandButton1_Click()

Dim Copie(33) As String, j%, i%, k%, p%, derLigne As Integer, derLigne2 As Integer, plop As Integer, previ As Worksheet, name As Range, dateref As Date, montant(33), dateact As Range

With ThisWorkbook.Worksheets("Clients")
    dateref = .Range("B17")
    Copie(0) = .Range("B4")
    For i = 1 To 6
            Copie(i) = .Range("A" & i + 15)
            montant(i) = .Range("B" & i + 15)
    Next i
    k = 6
    For j = 7 To 33
        If (.Range("B" & j + 17)) <> "" Then
            k = k + 1
            Copie(k) = .Range("A" & j + 17)
            montant(k) = .Range("D" & j + 17)
        End If
    Next j
End With

Workbooks.Open "C:\Users\XXXXX\Desktop\ENT\TABLEAUX AVANCEMENT PAIEMENT.xlsx" '

Set previ = ActiveWorkbook.Worksheets("Prévisionnel 2017")
derLigne = previ.Range("b" & Rows.Count).End(xlUp).Row + 1
plop = previ.Range("b" & Rows.Count).End(xlUp).Row + 1

previ.Cells(derLigne, 1).Value = Copie(0)

For k = LBound(Copie) + 1 To UBound(Copie)
    previ.Cells(derLigne, 2).Value = Copie(k)
    derLigne = derLigne + 1
Next k

derLigne2 = previ.Range("b" & Rows.Count).End(xlUp).Row

With Sheets("Prévisionnel 2017").Range(Cells(plop, 1), Cells(derLigne2, 14))
    .Borders.Weight = xlThin
    .Borders(xlInsideVertical).Weight = xlMedium
    .Borders(xlEdgeBottom).Weight = xlMedium
End With

With Sheets("Prévisionnel 2017").Range(Cells(plop, 1), Cells(derLigne2, 1))
    .Merge
    .HorizontalAlignment = xlCenter
    .VerticalAlignment = xlCenter
End With

End Sub
 

Discussions similaires

Réponses
4
Affichages
453