compréhension d'une macro

ezrielle

XLDnaute Occasionnel
bonjour,
Je souhaiterai comprendre plus en détail cette macro pour l'adapter à mon proagramme
Je vous remercie d'avance

Je joins mon programme si ca peut aider

Sub Archives()
Dim Datefac As Date
Dim Numfac As Integer
Dim Client, NumClien, Designation, Objet, Lot, CODE_CT, CODE_TVA, MT_TTC, COM_HT, COM_TVA, CT, MTG_TTC As Variant
With Application
.ScreenUpdating = False
.Calculation = xlManual
End With
Datefac = Sheets("Facmodele").Range("h8").Value
Client = Sheets("Facmodele").Range("c14").Value
Numfac = Sheets("Facmodele").Range("e9").Value
NumClient = Sheets("facmodele").Range("i12").Value
COM_HT = Sheets("facmodele").Range("i49").Value
COM_TVA = Sheets("facmodele").Range("i50").Value
CT = Sheets("facmodele").Range("i52").Value
MTG_TTC = Sheets("facmodele").Range("i54").Value
Sheets("facmodele").Select
Range("a24").Select
Do While ActiveCell <> ""
Lot = ActiveCell.Value
Objet = ActiveCell.Offset(0, 1).Value
Designation = ActiveCell.Offset(0, 2).Value
CODE_CT = ActiveCell.Offset(0, 6).Value
CODE_TVA = ActiveCell.Offset(0, 7).Value
MT_TTC = ActiveCell.Offset(0, 8).Value
Sheets("Fichier").Select
Range("a65536").End(xlUp).Offset(1, 0).Select
Selection.EntireRow.Insert
ActiveCell = Numfac
ActiveCell.Offset(0, 1) = Datefac
ActiveCell.Offset(0, 2) = Client
ActiveCell.Offset(0, 3) = NumClient
ActiveCell.Offset(0, 4) = Lot
ActiveCell.Offset(0, 5) = Objet
ActiveCell.Offset(0, 6) = Designation
ActiveCell.Offset(0, 7) = CODE_CT
ActiveCell.Offset(0, 8) = CODE_TVA
ActiveCell.Offset(0, 9) = MT_TTC
ActiveCell.Offset(0, 10).FormulaR1C1 = "=IF(RC9=1,RC10-RC13,"""")"
ActiveCell.Offset(0, 11).FormulaR1C1 = "=IF(RC9=2,RC10-RC13,"""")"
ActiveCell.Offset(0, 12).FormulaR1C1 = "=IF(RC9=1,RC10/1.196,IF(RC9=2,RC10/1.055,RC10))"
ActiveCell.Offset(0, 13).Value = COM_HT
ActiveCell.Offset(0, 14).Value = COM_TVA
ActiveCell.Offset(0, 15).FormulaR1C1 = "=RC14+RC15"
ActiveCell.Offset(0, 16).Value = CT
ActiveCell.Offset(0, 17).Value = MTG_TTC
ActiveCell.Offset(0, 19).FormulaR1C1 = "=IF(RC10+RC16+RC17=RC18,""OK"",""Attention Erreur!"")"
ActiveWorkbook.Names.Add Name:="NumFacture", RefersToR1C1:="=Fichier!R8C1:R" & ActiveCell.Row & "C1"
Sheets("Facmodele").Select
ActiveCell.Offset(1, 0).Select
Loop
With Application
.Calculation = xlAutomatic
.ScreenUpdating = True
End With
End Sub
 

Pièces jointes

  • Suivi d'affaire 3.zip
    18.7 KB · Affichages: 24
  • Suivi d'affaire 3.zip
    18.7 KB · Affichages: 20
  • Suivi d'affaire 3.zip
    18.7 KB · Affichages: 25

ledzepfred

XLDnaute Impliqué
Re : compréhension d'une macro

bonjour ezrielle,
ci-joint un fichier expliquant le code

tu trouveras ces explications dans l'editeur vba.
En gros je stocke des valeurs de cellules particulières dans des variables que je déverse dans un autre feuillet pour historiser des données.
Je regarderai ton fichier pour voir si on peut adapter.
A+
 

Pièces jointes

  • explication macro archives.xls
    25.5 KB · Affichages: 44

ledzepfred

XLDnaute Impliqué
Re : compréhension d'une macro

re

bien, j'ai regardé ton projet et c'est clair que le code est adaptable.
Que souhaites-tu faire exactement je vois bien que tu as mis des formats particuliers pour diverses cellules mais je ne sais pas où les affecter dans les feuillets recap
bref dis-moi les données de devis (C6; etc...) vont dans recap modelage, etc... (peux-tu eventuellement renseigner les champs à archiver par des valeurs pertinentes mais non confidentielles pour que je m'appuie dessus lors de l'écriture du code)


souhaites-tu une seule procédure ( qui fera toutes les archives en 1 seul clic à partir de tes differents feuillets où plusieurs macros qu'on lancera pour chaque archivage d'un feuillet)

enfin les désignations P1 à P4 sont aléatoires en nombre ou pas (quelle est la fourchette du nombre de déignations par devis, et les noms de ces désignations sont j'imagine differentes d'un devis à un autre sinon tu les appellerai pas P1 à P4, dans ce cas la structure de ton feuillet d'archive est à revoir, il faudrait 1 colonne désignation et une colonne PRIX HT et ce pour P1 P2 P3 P4

Dernière chose, il y a des données confidentielles dans ton fichier (genre adresse de deux salariés), fais attention à ce que tu mets dans tes pièces jointes
A+
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 413
Messages
2 088 199
Membres
103 763
dernier inscrit
p.michaux