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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| Sub ChargeFiche()
' Alimentation de la fiche Article
'recherche de l'enregistrement
Set vCellule = vWstArticles.Cells(2, 1)
Do While vClé <> vCellule
Set vCellule = vCellule.Offset(1, 0)
Loop
' si modif charger le n° d'enregistrement
vNumLigne = vCellule.Row
' charge les controles
CbxFamille.Text = vCellule.Offset(0, 1) 'famille
TxtEtat = vCellule.Offset(0, 2) 'État(Article supprimé)
CbxLibelléInterne.Text = vCellule.Offset(0, 3) 'libellé interne
CbxFormat.Text = vCellule.Offset(0, 4) 'Format
CbxGrammage.Text = Format(vCellule.Offset(0, 5), "###0") 'grammage
TxtPoids.Text = Format(vCellule.Offset(0, 6), "#0.000") 'Poids
CbxFournisseur.Text = vCellule.Offset(0, 7) 'Fournisseur
TxtCout.Text = Format(vCellule.Offset(0, 8), "#0.0000") 'Coût
TxtTemps.Text = Format(vCellule.Offset(0, 9), "#0.00") 'temps
CbxLibelléClient.Text = vCellule.Offset(0, 10) 'libellé client
TxtCommentaires.Text = vCellule.Offset(0, 11) 'commentaires
End Sub
Sub Enregistrer()
' Enregistrement d'un nouvel Article ou d'une modification
'-------------------------------------------------
'Contrôle des saisies
vMessage = ""
If CbxFamille.Text = "" Then vMessage = vMessage & "Famille, "
If CbxLibelléInterne.Text = "" Then vMessage = vMessage & "Libellé interne, "
If CbxLibelléClient.Text = "" Then vMessage = vMessage & "Libellé client, "
If vMessage <> "" Then
vMessage = "Veuillez saisir : " & vMessage
Alerte (vMessage): Exit Sub
End If
'Incrémentation Code et adresse de l'enregistrement (si modif ou suppr, vNumLigne est chargé dans LvwArticles_ItemClick() )
If vCommande = "Nouveau" Then
vClé = Application.WorksheetFunction.Max(Range("A:A")) + 1
vNumLigne = vWstArticles.Range("A65536").End(xlUp).Row + 1
End If
'Enregistrement dans la table
Set vCellule = vWstArticles.Cells(vNumLigne, 1)
vCellule.Offset(0, 0) = vClé 'VClé est chargé CmdNouveau,Cmdnouveau2 ou LvwArticles_ItemClick
vCellule.Offset(0, 1) = CbxFamille.Text
vCellule.Offset(0, 2) = TxtEtat.Text
vCellule.Offset(0, 3) = CbxLibelléInterne.Text
vCellule.Offset(0, 4) = CbxFormat.Text
vCellule.Offset(0, 5) = Format(CbxGrammage.Text, "###0")
vCellule.Offset(0, 6) = Format(TxtPoids.Text, "#0.000")
vCellule.Offset(0, 7) = CbxFournisseur.Text
vCellule.Offset(0, 8) = Format(TxtCout.Text, "#0.0000")
vCellule.Offset(0, 9) = Format(TxtTemps.Text, "#0.00")
vCellule.Offset(0, 10) = CbxLibelléClient.Text
vCellule.Offset(0, 11) = TxtCommentaires.Text
ThisWorkbook.Save
'Mise à jour des combobox, listview
LvwArticles.Sorted = False
MajListingArticles
ComboFill
'Conserver les données du dernier Article saisi
ChargeFiche
vMessage = ""
'MAJ des boutons de commande
vCommande = "Enregistrer"
Commande vCmdN, vCmdN2, vCmdM, vCmdE, vCmdA
End Sub |
Partager