XL 2016 Enoyer un email automatique par rapport a un stock

Flo26

XLDnaute Nouveau
Bonjour,

Mon fichier de gestion de stock fonctionne bien grasse à vous.
il manque cependant d'une fonction indispensable, un rappel par mail des stocks bas.

Je voudrais que lorsque la colonne M affiche le mot "FAUX" un email soit envoyé qu'une fois afin de prévenir du stock bas (dans le mail quantité de la colonne I avec le code barre de la colonne A) .
J'ai une ligne de code VBA pour cela, malheureusement rien ne se passe.
J'ai encore une fois besoin de votre aide pour me sortir de se problème.

dans VBA, jai activé "microsft office 16.0 object library.

Un grand merci d'avance.
 

Pièces jointes

  • douchette.xlsm
    44.6 KB · Affichages: 16

danielco

XLDnaute Accro
Teste :

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim OutApp As Object
  Dim OutMail As Object
  Dim strbody As String
  Dim L As Long
  If Target.Column = 9 And Target.Value > 1 Then
    Set OutApp = CreateObject("Outlook.Application")
    With Worksheets("feuil1") 'adaptez le nom de feuille
      strbody = ""
      Set OutMail = OutApp.CreateItem(0)
      strbody = .Range("A" & Target.Row) & " et " & .Range("I" & Target.Row) & " sont disponibles"
      With OutMail
        .To = "*****@****.com"
        .CC = ""
        .BCC = ""
        .Subject = "A vérifier"
        .Body = strbody
        .Display 'visu @MAIL
        '.Send ' pour l'envoi du @MAIL
      End With
    End With
    Set OutApp = Nothing
  End If
End Sub

Il faut modifier la ligne pour y mettre l'adresse du destinataire :
Code:
 .To = "*****@****.com"
La macro se trouve dans le module de la feuille Feuil1.

Daniel
 

Pièces jointes

  • Flo26 Stock Magasin.xlsm
    60.4 KB · Affichages: 10

Flo26

XLDnaute Nouveau
Avec le code de Basse outook se lance et envoie des mails comme expliqué précédemment avec les deux problème se pose :
- le premier est que l'email ce lance uniquement à la fermeture de fichier excel, alors que je voudrais qu'il ce lance juste au changement d’état de la colonne M (passage en FAUX).
- le second est qu'il m'envoie autant de mail que de ligne au dessus de celle qui comporte "FAUX"
(exemple : si a la ligne 28, "FAUX" apparaît dans la colonne M, alors 28 email vont être envoyés)
Hors je voudrais uniquement les infos de la ligne concerné.

Avec le fichier modifier Flo26 stock magasin, outlook ne ce déclenche pas ??
J'ai l'impression que des que le code est dans feuil1 outlook ne répond pas.
 

Flo26

XLDnaute Nouveau
D'accord. effectivement cela fonctionne.
Le problème est que chaque référence na pas la même quantité de stock sécurité pour déclencher l'email de rappel.

Par exemple :
-I4 l'email envoie à un stock restant de 3
-I5 l'email envoie à un stock restant de 10
-i6 l'email envoie à un stock restant de 1
...

C'est pour ça qu'aux début je pensais partir sur un système " vrai faux" rapporter à la quantité de la référence.
Peut être il y a plus facile pour le même résultat ?
 

Flo26

XLDnaute Nouveau
très bien, donc si on créer une colonne de déclenchement (disons la 13).
Il faut changer la ligne de code de déclenchement je suppose, pour que le déclenchement se face quand la casse de la colonne 9 soit égale à la colonne 13 sur la même ligne.

If Target.Column = 9 And Target.Value = 1 Then

Je sais pas trop comme arriver à ce résultat.
 

Pièces jointes

  • Flo26 Stock Magasin (2).xlsm
    62 KB · Affichages: 8

danielco

XLDnaute Accro
Le mail s'envoie chaque fois qu'une valeur est entrée en colonne I et que cette valeur est supérieure à la colonne 13. Je ne l'ai pas indiqué, mais j'ai désactivé la macro "Private Sub Workbook_BeforeClose(Cancel As Boolean)" du module "ThisWorkbook" dans le classeur que je t'ai retourné.

Daniel
 

Flo26

XLDnaute Nouveau
la macro en Private sub workbook est bien désactiver.
Mais voila ce qui ce passe, par exemple sur la ligne 2, en colonne 13 je rentre 5, pourtant l'email s'envoi que la colonne I soit à 3 ou à 10.
Je ne comprend pas pourquoi cela se produit ?
 

Discussions similaires

Réponses
17
Affichages
1 K
Réponses
22
Affichages
2 K

Statistiques des forums

Discussions
311 720
Messages
2 081 886
Membres
101 830
dernier inscrit
sonia poulaert