Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Mise à jour cellules du stock

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

rubis54

XLDnaute Occasionnel
Bonjour tout le monde,

Après multiples changements de mon classeur Stock, je pense avoir trouvé quelque chose de plus simple mais trop difficile pour moi en ce qui concerne le VBA pour faire fonctionner cela.

Explications:

A part la feuille "TDB" et "STOCK" il y a 3 feuilles supplémentaires "SORTIE DU JOUR, COMMANDE et ENTREE STOCK"

- sur ces trois feuilles, on se place sur B2 pour taper les premières lettres de l'article recherché et on presse la touche Entrée. Ensuite il affiche en colonne "D" les articles trouvés. On choisit ensuite l'article voulu, on double clique sur l'article et il vient s'afficher dans le tableau à droite(pareil pour les trois feuilles) il ne reste plus qu'a remplir les cellules de la colonne Qté.

Jusqu'ici tout va bien. Lorsque je clique sur "RAZ et Mise à jour stock", il mets à jour uniquement les deux premières lignes de mon stock. Donc même si je choisis un seul article par exemple " tomates " pour la sortie du jour , pour la commande ou pour entrée stock, il mettra à jour la première ligne de mon stock au lieu de mettre à jour la ligne des tomates dans le stock.

Alors est ce quelqu'un pourrai m'aider à rectifier ces erreurs SVP.

Je vous Remercie d'avance.

Rubis54
 

Pièces jointes

OK Jean Marie,
j'ai testé et cela à l'air de fonctionner. Si je choisis par exemple un article avec un stock zéro il ne l'affiche pas.
Super.
C'est vraiment sympa de votre part et de Fanch55 ainsi que Lolote83.
Pour nous c'est pas simple et parfois on pose trop de questions peut-être mais on est obligé, il faut bien que ça rentre🤣
A+
 
Re
j'ai trouvé cette méthode !
On regarde la Hauteur du DataBodyRange si = à 0 c'est qu'il n'y a pas de ligne Visible !
VB:
If Worksheets("STOCK").ListObjects("Tableau2").DataBodyRange.Height = 0 Then Exit Sub

juste pour le Fun Lol
jean marie
 
On regarde la Hauteur du DataBodyRange si = à 0 c'est qu'il n'y a pas de ligne Visible !
Super Jean-Marie, je n'y avions point pensé 😁
Je vais retenir la formule de contournement précieusement .

@rubis54 : code modifié :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    
    If Target.Address = [B2].Address Then
        Range("D2:D" & WorksheetFunction.Max(2, Cells(Rows.Count, "D").End(xlUp).Row)).Clear
        [Tableau2].ListObject.Range.AutoFilter
        [Tableau2].ListObject.Range.AutoFilter Field:=2, Criteria1:="=" & [B2] & "*", Operator:=xlAnd
        [Tableau2].ListObject.Range.AutoFilter Field:=5, Criteria1:=">0", Operator:=xlAnd
        If [Tableau2[#data]].Height > 0 Then [Tableau2[Désignation]].SpecialCells(xlCellTypeVisible).Copy [D2]
        [Tableau2].ListObject.Range.AutoFilter
    End If
    
End Sub
 
Re Fanch55,

j'ai aussi cette proposition pour le code en question.

"Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = [B2].Address Then
Range("D2😀" & WorksheetFunction.Max(2, Cells(Rows.Count, "D").End(xlUp).Row)).Clear
[Tableau2].ListObject.Range.AutoFilter
[Tableau2].ListObject.Range.AutoFilter Field:=2, Criteria1:="=" & [B2] & "*", Operator:=xlAnd
[Tableau2].ListObject.Range.AutoFilter Field:=5, Criteria1:=">0", Operator:=xlAnd
If [Tableau2[Désignation]].SpecialCells(xlCellTypeVisible).Rows.Count = 0 Then Exit Sub 'Ici
[Tableau2[Désignation]].SpecialCells(xlCellTypeVisible).Copy [D2]
[Tableau2].ListObject.Range.AutoFilter
End If
Sheets("STOCK").Range("A1:F1685").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets("SORTIE DU JOUR").Range _
("B1:B2"), CopyToRange:=Sheets("SORTIE DU JOUR").Range("E1"), Unique:=False
End Sub"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2010 du Stock
Réponses
3
Affichages
831
Réponses
2
Affichages
2 K
Réponses
21
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…