Αυτόματη αποστολή email. Καλησπέρα.
Έχω φτιάξει κώδικα ώστε να μπορώ να στέλνω email ειδοποίησης όταν ικανοποιείται μια συγκεκριμένη συνθήκη. Συγκεκριμένα όταν η τιμή στο κελί G15 γίνεται μικρότερη ή ίση με 7 να δημιουργείται το email. Το ίδιο για τα κελιά G16 και G17.
Καθώς χρησιμοποίησα την If μέσα στον κώδικα, θεώρησα ότι τα email θα αποστέλλονταν όταν θα ικανοποιούνταν η If. Δεν γίνεται όμως κάτι τέτοιο. Πρέπει να εκτελέσω χειροκίνητα το module για να γίνει η αποστολή.
Παραθέτω τον κώδικα: Κώδικας:
Sub Email_From_Excel_()
Dim emailApplication As Object
Dim emailItem1 As Object
Dim emailItem2 As Object
Dim emailItem3 As Object
Set emailApplication = CreateObject("Outlook.Application")
Set emailItem1 = emailApplication.CreateItem(0)
Set emailItem2 = emailApplication.CreateItem(0)
Set emailItem3 = emailApplication.CreateItem(0)
emailItem1.to = Sheets("Αρχείο σέρβις οχήματος").Range("E7")
emailItem2.to = Sheets("Αρχείο σέρβις οχήματος").Range("E7")
emailItem3.to = Sheets("Αρχείο σέρβις οχήματος").Range("E7")
emailItem1.Subject = Sheets("Αρχείο σέρβις οχήματος").Range("L8")
emailItem2.Subject = Sheets("Αρχείο σέρβις οχήματος").Range("L8")
emailItem3.Subject = Sheets("Αρχείο σέρβις οχήματος").Range("L8")
If Sheets("Αρχείο σέρβις οχήματος").Range("G15") <= 7 Then emailItem1.Body = Sheets("Αρχείο σέρβις οχήματος").Range("L15")
If Sheets("Αρχείο σέρβις οχήματος").Range("G16") <= 7 Then emailItem2.Body = Sheets("Αρχείο σέρβις οχήματος").Range("L16")
If Sheets("Αρχείο σέρβις οχήματος").Range("G17") <= 7 Then emailItem3.Body = Sheets("Αρχείο σέρβις οχήματος").Range("L17")
If Sheets("Αρχείο σέρβις οχήματος").Range("G15") <= 7 Then emailItem1.Send
If Sheets("Αρχείο σέρβις οχήματος").Range("G16") <= 7 Then emailItem2.Send
If Sheets("Αρχείο σέρβις οχήματος").Range("G17") <= 7 Then emailItem3.Send
Set emailItem = Nothing
Set emailApplication = Nothing
End Sub Τι πρέπει να κάνω ώστε να μην χρειάζεται να ανοίγω το αρχείο, αλλά όταν ικανοποιηθεί η If να στέλνονται αυτόματα τα email;
Ευχαριστώ πολύ, κάθε πρόταση καλοδεχούμενη. |