1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
Public Sub transfert()
'déclaration des variables
Dim nom As String, objet As String, numfacture As String, client As String
Dim montantHT As Variant, montantTTC As Variant, datefact As Date
' selection de la feuille de travail
Sheets("TRAME DE FACTURE").Select
'Affectation des valeurs aux variables
numfact = Cells(2, 7).Value
client = Cells(5, 7).Value
objet = Cells(17, 1).Value
datefact = Cells(13, 7).Value
'vérification sur la colonne "G" de la position de la cellule contenant le mot "Montant HT"
'afin de définir le numéros de ligne de ce montant
For i = 19 To 40
If Cells(i, 6).Value = "Montant HT" Then
'affectaion des valeurs aux variables
montantHT = Cells(i, 7).Value
montantTTC = Cells(i + 2, 7).Value
Else: End If
Next i
Sheets("SUIVI").Select
Range("A1").Select
'positionnement de la cellule à la fin de la liste
Selection.End(xlDown).Select
ligne = Selection.Row
If ligne = 1048576 Then
ligne = 1
Cells(ligne + 1, 1).Select
Else: End If
'copie des données dans la ligne défini ci dessus
Cells(ligne + 1, 1).Value = numfact
Cells(ligne + 1, 2).Value = client
Cells(ligne + 1, 3).Value = objet
Cells(ligne + 1, 4).Value = montantHT
Cells(ligne + 1, 5).Value = montantTTC
Cells(ligne + 1, 6).Value = detefact
Sheets("TRAME DE FACTURE").Select
'Copie de la nouvelle facture dans un nouveau fichier (sous entendu 1 fichier par nouvelle facture)
' je le copie sous le disque D:
Sheets("TRAME DE FACTURE").Copy
ChDir "D:\"
ActiveSheet.Shapes.Range(Array("Button 1")).Select
Selection.Delete
'je renomme la feuille avec le numéro de la facture
Sheets("TRAME DE FACTURE").Name = "Facture" & numfact
'je renome le fichier avec le nom de la facture
ActiveWorkbook.SaveAs Filename:="D:\Facture" & numfact & ".xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
End Sub |
Partager