XL 2013 2 Combobox en cascade avec Ajouter Modifier Supprimer

roross

XLDnaute Junior
Probleme sur UserForm : USF_CréationArticle
Probleme sur UserForm : USF_Mouvement
Combobox Article et Combobox Couleur en cascade
comment faire les boutons Ajouter, Modifier et supprimer sur Feuil Stock sur tout USF_Mouvement
 

Pièces jointes

  • Stock.xlsm
    71.9 KB · Affichages: 18

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonsoir,

VB:
Option Compare Text
Dim nomtableau
Private Sub UserForm_Initialize()
  nomtableau = "stock"
  Me.enreg = Range(nomtableau).Rows.Count + 1
  Me.Id = Application.Max(Range(nomtableau).Columns(1)) + 1
  Tbl = Range(nomtableau).Value
  Tri Tbl, LBound(Tbl), UBound(Tbl), 2
  Me.Recherche.List = Tbl
End Sub

Private Sub Recherche_Change()
  Me.enreg = Application.Match(Val(Me.Recherche), Range(nomtableau).Columns(1), 0)
  Me.Id = Me.Recherche
  Me.Article = Range(nomtableau).Item(enreg, 2)
  Me.Couleur = Range(nomtableau).Item(enreg, 3)
  Me.StockInitial = Range(nomtableau).Item(enreg, 4)
  Me.Entrée = Range(nomtableau).Item(enreg, 5)
  Me.Sortie = Range(nomtableau).Item(enreg, 6)
  Me.Stock = Range(nomtableau).Item(enreg, 7)
  Me.StockMini = Range(nomtableau).Item(enreg, 8)
  Me.photo = Range(nomtableau).Item(enreg, 9)
  If Dir(Me.photo) <> "" Then
     Me.Image1.Picture = LoadPicture(Me.photo)
   End If
End Sub

Private Sub B_valid_Click()
If Not IsNumeric(Me.StockInitial) Then MsgBox "Numérique!": Me.StockInitial.SetFocus: Exit Sub
If Not IsNumeric(Me.Stock) Then MsgBox "Numérique!": Me.Stock.SetFocus: Exit Sub
If Not IsNumeric(Me.StockMini) Then MsgBox "numérique!": Me.StockMini.SetFocus: Exit Sub
enreg = Me.enreg
  Range(nomtableau).Item(enreg, 1) = Val(Me.Id)
  Range(nomtableau).Item(enreg, 2) = Me.Article
  Range(nomtableau).Item(enreg, 3) = Me.Couleur
  Range(nomtableau).Item(enreg, 4) = CDbl(Me.StockInitial)
  Range(nomtableau).Item(enreg, 5) = Me.Entrée
  Range(nomtableau).Item(enreg, 6) = Me.Sortie
  If Stock <> "" Then Range(nomtableau).Item(enreg, 7) = CDbl(Me.Stock)
  If StockMini <> "" Then Range(nomtableau).Item(enreg, 8) = CDbl(Me.StockMini)
  Range(nomtableau).Item(enreg, 9) = Me.photo
  raz
  UserForm_Initialize
End Sub

Private Sub B_sup_Click()
  If MsgBox("Etes vous sûr de supprimer " & Me.Article & "?", vbYesNo) = vbYes Then
     Range(nomtableau).Rows(Me.enreg).Delete
     Me.Recherche.List = Range(nomtableau).Value
  End If
End Sub
Private Sub B_ajout_Click()
  raz
  Me.Id = Application.Max(Range(nomtableau).Columns(1)) + 1
  Me.enreg = Range(nomtableau).Rows.Count + 1
End Sub

Sub raz()
  Me.Article = ""
  Me.Couleur = ""
  Me.StockInitial = ""
  Me.Entrée = ""
  Me.Sortie = ""
  Me.Stock = ""
  Me.StockMini = ""
  Me.photo = ""
  Me.Image1.Picture = LoadPicture
End Sub

Private Sub B_photo_Click()
   nf = Application.GetOpenFilename("Fichiers jpg,*.jpg")
   If Not nf = False Then
     Me.photo = nf
     Me.Image1.Picture = LoadPicture(nf)
   End If
End Sub



Boisgontier
 

Pièces jointes

  • ProduitPhoto.xlsm
    67.5 KB · Affichages: 26
Dernière édition:

Discussions similaires

Réponses
28
Affichages
1 K

Statistiques des forums

Discussions
312 330
Messages
2 087 335
Membres
103 521
dernier inscrit
Excellover 21