[Excel 2003] Fermeture du classeur avec vérification de saisie de champs obligatoires

Taddy

XLDnaute Nouveau
Bonjour le forum,

Je me retourne vers vous car j'ai besoin d'aide.

Dans mon fichier Excel, j'ai une feuille "Personnes" dans laquelle il y a deux champs obligatoires à saisir Civilité et Nom. Dans la colonne relative à la civilité, j'ai créé une liste de validation (feuille source masquée) et la colonne pour les noms oblige la saisie en majuscules.
Ce que je veux faire, c'est avant la fermeture du classeur, vérifier que le nom et la civilité soient renseignés. Pour cela j'ai défini une plage Civ_Nom qui regroupe les deux colonnes et j'essaie de faire un "for each" sur les deux colonnes de cette plage à la dernière ligne remplie...Et j'y arrive à moitié.

Quelqu'un pourrrait-il m'aider svp?

Merci d'avance.

P.S : Je joins pour que ça soit plus clair mon fichier allégé.
 

Pièces jointes

  • Test_Liste_Personnes.zip
    25.8 KB · Affichages: 33
G

Guest

Guest
Re : [Excel 2003] Fermeture du classeur avec vérification de saisie de champs obligat

Bonjour Taddy,

Voici une proposition.
Dans Workbook_BeforeClose j'ai commenté la ligne Cancel = true pour les tests, c'est donc normal que le classeur se ferme malgrès le résultat du test. A toi de décommenter cette ligne pour empêcher la fermeture.

A bientôt
 

Taddy

XLDnaute Nouveau
Re : [Excel 2003] Fermeture du classeur avec vérification de saisie de champs obligat

Bonjour Hasco,

Merci pour ta proposition, elle fonctionne parfaitement. Cependant, je n'arrive pas à comprendre où est renseignée la variable ["Der_Ligne"]. Elle apparait uniquement dans la zone de texte que tu as rajouté puis tu l'utilises dans la fonction.

Est ce que la zone de texte permet de définir l'affectation de cette variable???
Ah oui une autre question : la notation ["xxxx"] représente quoi?

Mes questions peuvent sembler bête, mais je n'arrive pas à comprendre.

Je te remercie de nouveau pour ton aide.

A bientôt.
 
G

Guest

Guest
Re : [Excel 2003] Fermeture du classeur avec vérification de saisie de champs obligat

Bonjour,

je n'arrive pas à comprendre où est renseignée la variable ["Der_Ligne"].

C'est un nom défini dans le classeur. Insertion/Nom/définir comme je l'ai indiqué dans la zone de texte de la première feuille.

La notation [] est le raccourci pour la fonction VBA Excel Evaluate. Qui évalue si une expression peut-être interprétée par Excel et renvoyer un résultat(voir l'aide en ligne excel)

["Der_Ligne"] renvoie la valeur du nom Der_ligne tel que définit dans la feuille(Calcul du dernier numéro de ligne.

A+
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87