explication code Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
J
JeremyW
Membre fidèle
Membre fidèle
Messages : 431
Appréciation reçue : 1
Inscrit le : 16 juillet 2013
Version d'Excel : 2003 & 2007

Message par JeremyW » 28 novembre 2013, 17:30

Bonjour,

Est-ce que quelqu'un pourrait m'expliquer cette formule
If (CheckBox1 + CheckBox2 + CheckBox3 + CheckBox4) * (CheckBox5evu + CheckBox6en + CheckBox7jf + CheckBox8arbres + CheckBox9atl + CheckBox10autres) And TextBox1nom.Value <> "" And TextBox2prénom.Value <> "" And TextBox1mail.Value <> "" And TextBox5telephone.Value <> "" And TextBox3objetdemande.Value <> "" And TextBox4.Value <> "" And TextBox6lieutravaux.Value <> "" Then
Shapes("ENVOYER").OLEFormat.Object.Enabled = True
Je comprend bien le code qui libère la commande "ENVOYER"
Par contre comme je n'arrive pas à expliquer comment il fonctionne je n'arrive pas à éditer un code qui dit exactement l'inverse et qui revérrouille la commande "ENVOYER"

Merci
h
h2so4
Passionné d'Excel
Passionné d'Excel
Messages : 7'942
Appréciations reçues : 238
Inscrit le : 16 juin 2013
Version d'Excel : 2013 UK Windows 10

Message par h2so4 » 28 novembre 2013, 17:50

pour inverser la condition 2 propositions
If not((CheckBox1 + CheckBox2 + CheckBox3 + CheckBox4) * (CheckBox5evu + CheckBox6en + CheckBox7jf + CheckBox8arbres + CheckBox9atl + CheckBox10autres) And TextBox1nom.Value <> "" And TextBox2prénom.Value <> "" And TextBox1mail.Value <> "" And TextBox5telephone.Value <> "" And TextBox3objetdemande.Value <> "" And TextBox4.Value <> "" And TextBox6lieutravaux.Value <> "") Then
Shapes("ENVOYER").OLEFormat.Object.Enabled = false
If (CheckBox1 + CheckBox2 + CheckBox3 + CheckBox4) * (CheckBox5evu + CheckBox6en + CheckBox7jf + CheckBox8arbres + CheckBox9atl + CheckBox10autres) And TextBox1nom.Value <> "" And TextBox2prénom.Value <> "" And TextBox1mail.Value <> "" And TextBox5telephone.Value <> "" And TextBox3objetdemande.Value <> "" And TextBox4.Value <> "" And TextBox6lieutravaux.Value <> "" Then
else
Shapes("ENVOYER").OLEFormat.Object.Enabled = false
pour ce qui est de l'explication,

pour valider l'envoi, il faut que l'une des checkboxes 1 à 4 ait été selectionnées ET que l'une des checkbox 5 à 10 ait été selectionnée ET que toutes les textboxes contiennent une valeur
J
JeremyW
Membre fidèle
Membre fidèle
Messages : 431
Appréciation reçue : 1
Inscrit le : 16 juillet 2013
Version d'Excel : 2003 & 2007

Message par JeremyW » 28 novembre 2013, 18:51

Merci beaucoup, j'ai pas pensé à utiliser "not"
Je teste ça demain
J
JeremyW
Membre fidèle
Membre fidèle
Messages : 431
Appréciation reçue : 1
Inscrit le : 16 juillet 2013
Version d'Excel : 2003 & 2007

Message par JeremyW » 29 novembre 2013, 08:33

Petite question subsidiaire mais qui a son importance
Le code je l'ai appliqué à chaque checkBox et textBox ce qui me fait le recopier une 15aine de fois.
Est ce que c'est juste ainsi, j'avais essayé de l'appliquer à la commande "Envoyer" mais sans succés.

Merci
h
h2so4
Passionné d'Excel
Passionné d'Excel
Messages : 7'942
Appréciations reçues : 238
Inscrit le : 16 juin 2013
Version d'Excel : 2013 UK Windows 10

Message par h2so4 » 29 novembre 2013, 11:08

bonjour,

effectivement, pour ce que tu veux faire, à mettre au niveau de chaque checkboxes et textboxes, pas au niveau du bouton envoyer.
mais je mettrais le code suivant
If (CheckBox1 + CheckBox2 + CheckBox3 + CheckBox4) * (CheckBox5evu + CheckBox6en + CheckBox7jf + CheckBox8arbres + CheckBox9atl + CheckBox10autres) And TextBox1nom.Value <> "" And TextBox2prénom.Value <> "" And TextBox1mail.Value <> "" And TextBox5telephone.Value <> "" And TextBox3objetdemande.Value <> "" And TextBox4.Value <> "" And TextBox6lieutravaux.Value <> "" Then
Shapes("ENVOYER").OLEFormat.Object.Enabled = true
else
Shapes("ENVOYER").OLEFormat.Object.Enabled = false
end if
Modifié en dernier par h2so4 le 29 novembre 2013, 11:36, modifié 1 fois.
J
JeremyW
Membre fidèle
Membre fidèle
Messages : 431
Appréciation reçue : 1
Inscrit le : 16 juillet 2013
Version d'Excel : 2003 & 2007

Message par JeremyW » 29 novembre 2013, 11:35

Merci beaucoup pour ton aide.
Ca fonctionne parfaitement bien evidement
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message
  • Explication code
    par aude21 » 22 mai 2017, 11:12 » dans Excel - VBA
    8 Réponses
    138 Vues
    Dernier message par aude21
    22 mai 2017, 16:30
  • Explication code
    par emma_38 » 29 septembre 2015, 11:19 » dans Excel - VBA
    1 Réponses
    184 Vues
    Dernier message par frangy
    29 septembre 2015, 11:44
  • Explication code
    par Dehbi » 3 janvier 2018, 09:35 » dans Excel - VBA
    3 Réponses
    74 Vues
    Dernier message par gmb
    3 janvier 2018, 10:03
  • Explication code SVP...
    par atlonia » 5 mars 2019, 23:40 » dans Excel - VBA
    2 Réponses
    43 Vues
    Dernier message par atlonia
    6 mars 2019, 01:04
  • Explication d'un Code VBA
    par calounne » 22 mai 2017, 19:44 » dans Excel - VBA
    4 Réponses
    151 Vues
    Dernier message par calounne
    24 mai 2017, 10:49
  • Explication ligne de code
    par RIRI91 » 21 décembre 2013, 11:02 » dans Excel - VBA
    6 Réponses
    240 Vues
    Dernier message par RIRI91
    21 décembre 2013, 12:07