Bonjour
J’aimerais cree un commande de bierre automatique quand je remplit une fiche de stock.
Je ne m’en sort pas quelqu’un peu aider?
Order Form est la ou je veux que sa ce remplisse tous seul et Stocktake et ma base de reference sachant que column G si le nombre et 0 ou inferieur je ne veux pas qu’il apparaise dans ma fiche de commande.
Pourriez-vous nous indiquer plus en détail votre demande ?
Je me sens un peu perdu. Vous souhaitez qu’une commande se fasse automatiquement lorsque vous remplissez une fiche de stock. (J’imagine la feuille « Stockage »?)
Je vois une feuille appelée « Stockage » et une autre feuille qui ressemble à un bon de commande. Ensuite, vous mentionnez que vous souhaitez que la feuille « Stockage » se remplisse automatiquement en fonction de vos références.
Je vois également une feuille « PLU » et une feuille « Product » qui pourraient répondre à vos références, mais laquelle est-ce ?
Donnez-nous plus de détails afin que nous puissions vous aider.
Les seule feuilles a s’occuper sont stocktake and Order Form le reste n’a pas d’importance.
La feuille Stocktake va etre remplis toutes les semaines pour que la commande soit envoyez par mail au fournisseur donc jaimerais quand je remplis ma colone F dans la feuille Stocktake sa envoie les donner de la colone G de la feuille stocktake a monj bon de commande avec toute les infos de chaque produit.
on peut aussi utiliser l’autofiltre etc, mais on veut quelles colonnes ???
Sub teste()
Dim aA, aLignes, aColonnes
aColonnes = Array(1, 3, 6, 2, 4, 7, 7, 7, 7, 7) 'numéro des colonnes de "StockTable" que vous voulez copier
With Sheets("stocktake")
If .AutoFilterMode Then .AutoFilterMode = False
With .ListObjects("Table17") ' ce tableau
.Range.AutoFilter
.Range.AutoFilter 7, ">0" 'filtrer les valeurs "NEED TO ORDER" >0
i = .ListColumns(1).Range.SpecialCells(xlVisible).Count 'compte les lignes filtrées (inclu l'entête)
If i > 1 Then
.DataBodyRange.Copy
With .Range.Cells(.ListRows.Count + 10, 1).Resize(i - 1, 8)
.PasteSpecial xlValues
aA = .Value
.ClearContents
End With
.Range.AutoFilter
With Sheets("Order form").Range("A13")
.Resize(250, 10).ClearContents
aLignes = Evaluate("row(A1:A" & i - 1 & ")")
.Resize(UBound(aA), UBound(aColonnes)).Value = Application.Index(aA, aLignes, aColonnes)
End With
End If
End With
End With
End Sub
Merci cela marche tres bien,
Jai une autre faveur a demander, comment puije faire pour ajouter une ligne de code pour dire si la case et blank (vide) sur ma feuille « Stocktake » et ma column « Current Stock » laisser « 0 » sur la column « Need to order »
« Si il y a un chiffre faire la soustraction si cest vide laisser a zero. »