Contrôle de saisie de cellule

Bonjour,

Je dispose d'un fichier ouvert à de nombreuses personnes.

Je souhaiterai intégrer une formule ou une macro pour "obliger" la saisie de différentes cellules ou du moins informer l'utilisateur que sa demande ne peut être prise en compte s'il ne rempli pas telle ou telle cellule (avec un message d'avertissement).

Il y a t'il une formule de contrôle ou de test logique qui permettrait cela ?

Merci par avance,

Bonjour,

On peut faire une petite macro qui boucle sur les cellules à renseigner,

Faudrait voir la feuille (colore les cellules en question)

Amicalement

Claude

Salut padasan et le forum

Il n'y a ni devin, ni télépathe sur ce site... et un seul utilisateur de ton fichier.

Généralités dans le sujet => généralités dans la réponse

tu peux utiliser les listes de validation en interdisant le vide

une formule qui teste la valeur des différentes cellules

des MFC

des macros

A+

J'ai essayé avec la validation mais le message d'erreur que je créé ne s'affiche pas si la cellule est vide à l'enregistrement...

Sinon, quelle formule utiliser pour tester les cellules et faire apparaitre un message en cas de vide ?

Doit on forcément passer par une macro au final ?

Je met un fichier en pj pour illustration comme le demandait Claude (cellule en jaune doivent être rempli)

Merci

-- 16 Juin 2011, 13:48 --

Voici le fichier en question !!

120test.zip (31.96 Ko)

Salut padasan et le forum

Comme je l'ai déjà dit, je ne suis pas utilisateur de ton fichier : toute évidence ne l'est que pour toi !

Si j'ai bien compris, on propose des places sur la feuille "Covoiturage 14" :

nom_14 : tu en fais une plage fixe, alors qu'elle doit être dynamique : pour ce nom, dans "fait référence à" :

=DECALER('14'!$A$1;1;0;NBVAL('14'!$A$2:$A$1000);1)

et tu essaies, en ajoutant ou supprimant des nom en A de 14.

Ensuite, tu peux affecter la liste de validation aux cellules D12:D63.

Si on inscrit une valeur dans B12:B63, il faudra obligatoirement que B, C, D soient remplies (et sans doute H et I) : Ce qui m'importe, c'est le moment où on avertit que les cellules ne sont pas remplies.

On peut le faire de manière automatique, mais comme je ne connais pas le fonctionnement attendu... je propose qu'on fasse cela à l'inscription (clic sur je m'inscris).

Remplace ton code par celui-ci :

Sub Inscription14()
'Déclaration =====================================
Dim F As Worksheet, Shp As Shape, X As Long, Col As Integer
'MEI =============================================
Set F = ActiveSheet                     'feuille active
Set Shp = F.Shapes(Application.Caller)  'forme ayant lancé la macro
'Vérification ====================================
X = Shp.TopLeftCell.Row                 'ligne concernée
For Col = 2 To 4
    If F.Cells(X, Col) = "" Then
        MsgBox "vous devez remplir : " & F.Cells(11, Col), vbCritical, "Erreur de saisie"
        F.Cells(X, Col).Activate
        Exit Sub
    End If
Next Col

'Sortie ==========================================
MsgBox ("Nous vous remercions de proposer le covoiturage pour ce trajet. Les données ont bien été enregistrées, vous pouvez quitter l'application.")
ActiveWorkbook.Save
End Sub

Testes-le. On aurait pu le condenser (ne pas définir F, X et Shp, mais utiliser la définition de Application.caller), mais je suppose que c'est un début de traitement.

A+

Rechercher des sujets similaires à "controle saisie"