Rapport de message :*
 

Re: Afficher une msgbox

Titre du sujet : Re: Afficher une msgbox
par myDearFriend! le 23/01/2021 00:48:13

Bonsoir Parafun et bienvenue sur mDF-XLpages.com.smiley

 

Ta question semble être simple, mais selon moi, elle demande cependant quelques éclaircissements et points de réflexion...

 

Pour tout traitement VBA, la première question à se poser, c'est : quel évènement (ou quelle action) devra déclencher mon code ?

 

La présence de doublons dans un tableau n'est pas un évènement en soi.

Par évènement, il faut entendre un fait générateur, une action ou un changement d'état  qui servira de point de départ pour déclencher ton programme. Une fois déclenché, ton code pourra ensuite analyser tes cellules et, le cas échéant, t'avertir par un message d'alerte. Mais avant toutes choses, il faut trouver le déclencheur.

 

La détection de tes valeurs doublons (impliquant l'affichage du message d'alerte éventuel) doit-elle être déclenchée par :

  • l'action de saisir une valeur dans une cellule ?
  • l'action de cliquer sur un bouton ?
  • l'action d'ouvrir le classeur lui-même ?  
  • etc.

 

La deuxième étape, consiste ensuite à définir la façon dont le code devra agir et son déroulement :

Par exemple : si je décide qu'il faut cliquer sur un bouton, alors faut-il que le code parcourt tout le tableau et recherche, ligne après ligne, la présence de doublons ?

Dans l'affirmative : en cas de présence de multiples doublons (selon la taille du tableau), l'utilisateur risque fort de subir une overdose de MsgBox d'alerte en cascade, non ?

 

Ensuite, n'aurais-tu pas inversé la logique dans ton énoncé ? 

 

" Attention doublon" quand K1<>I1

Pour moi, c'est l'inverse : si les éléments sont différents, alors ils ne s'agit justement pas de doublons. 

 

Je pense qu'il serait préférable que tu joignes un fichier exemple (très simplifié) de ce que tu souhaiterais obtenir (voir la FAQ : Comment joindre un fichier dans le Forum ?" au besoin). N'hésite pas à donner plus de détails.

 

Bien cordialement,