Conditionner l'envoi d'un fichier par email depuis Excel

Bonjour,

Je souhaiterais obliger les utilisateurs d'une feuille Excel à remplir certaines cellules avant de pouvoir envoyer par email la feuille Excel en question depuis Excel. Quel code utiliser svp?

Windows xp / Excel 2010

Le code IF!

Merci.

je ne sais pas quel est le nom d'appel de cette fonctionnalité.

Par exemple j'ai utilisé --> Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Pour obliger ... avant sauvegarde

Quel serait le "private Sub" à utiliser pour l'envoi du courrier electronique sous E3xcel svp?

Private Sub Workbook_BeforeClose(Cancel As Boolean)

End Sub

Merci mais l'utilisateur peut toujours envoyer le fichier sans le fermer

bah tu mets une variable globale qui devient fausse quand le mail est envoyé... Et tu la testes en quitant

je t'avoue que j'ai du mal à te suivre je ne suis pas assez aguerri pour interpréter ton conseil

Voici ce que j'ai commencé à écrire dans thisworbook suite à ton conseil mais je ne sais pas trop comment faire pour faire référence à la condition d'envoi du mail

Private Sub Workbook_BeforeClose(Cancel As Boolean)

If Sheets("KYC").Range("B2").Value = "" _

Or Sheets("KYC").Range("B3").Value = "" _

Or Sheets("KYC").Range("B5").Value = "" _

Or Sheets("KYC").Range("B6").Value = "" _

Or Sheets("KYC").Range("B8").Value = "" _

Or Sheets("KYC").Range("B10").Value = "" _

Or Sheets("KYC").Range("B19").Value = "" _

Or Sheets("KYC").Range("B20").Value = "" _

Or Sheets("KYC").Range("B21").Value = "" _

Or Sheets("KYC").Range("B22").Value = "" _

Or Sheets("KYC").Range("B23").Value = "" _

Or Sheets("KYC").Range("B28").Value = "" _

Or Sheets("KYC").Range("D2").Value = "" _

Or Sheets("KYC").Range("D5").Value = "" _

Or Sheets("KYC").Range("D6").Value = "" _

Or Sheets("KYC").Range("D10").Value = "" Then

MsgBox "Vous devez renseigner les champs obligatoires marqués d'un * "

Cancel = True

End If

End Sub

Dans ta macro d'envoi de mail tu mets à la fin de ta macro :

Sheets("KYC").Range("ZZ400").Value="OUI"

Dans ton beforeclose tu vas tester si zz400 est = "OUI" s'il l'est pas d'envoi de mail, sinon envoi.. puis tu vires le oui...

Ah mais je n'ai pas de macro d'envoi de mails, je cherche à bloquer l'utilisation de la fonction courrier électronique d'Excel.

En gros empecher l'utilisateur de faire "fichier/Envoi ce classeur par courrier electronique"

Tu ne peux pas faire cela.

Seul moyen montrer créer un bouton et dire à l'utilisateur d'utiliser le bouton pour l'envoi du mail plutôt que "fichier/Envoi ce classeur par courrier électronique"

arfff ok merci beaucoup je vais faire cela

Rechercher des sujets similaires à "conditionner envoi fichier email"