Rendre obligatoire la saise de la cellule

Résolu
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023 - Modifié le 7 mai 2023 à 19:34
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 - 9 mai 2023 à 20:01

Bonjour,

Comment rendre obligatoire la saise de la cellule O...à partir du moment ou A... est remplie et empecher la sauvegarde et ou de quitter?

Cordialement

20 réponses

Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
7 mai 2023 à 19:33

Bonjour.

Il n'y a que deux méthodes :

  • Programmer un script VBA pour créer une macro.
  • Afficher dans la feuille un message invitant l'utilisateur à respecter la consigne ...

0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
7 mai 2023 à 19:55

Bonjour,

J'ai essaye mais pas réussi si vous pouviez m'aider c'est pour ça que je fait appel au forum...

0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
Modifié le 7 mai 2023 à 20:22

Bonjour à vous deux

@ FAbdu37

Dans ThisWorkbook de l'éditeur VBA copier-coller ces 2 macros, l'une pour la fermeture l'autre pour la sauvegarde

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Sheets("Feuil1").Range("O3") = "" And Sheets("Feuil1").Range("A2") <> "" Then
MsgBox "Vous devez d'abors compléter la cellule O3"
Cancel = True
End If
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Sheets("Feuil1").Range("O3") = "" And Sheets("Feuil1").Range("A2") <> "" Then
MsgBox "Vous devez d'abors compléter la cellule O3"
Cancel = True
End If
End Sub

Modifier les références des cellules A2 et O3 dans les 2 macros pour mettre celles de ton fichier avant de fermer l'éditeur VBA et enregistrer le fichier (cellules en A et en O vides)

Cdlmnt

Via


0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
7 mai 2023 à 20:56

Bonjour

A essayer

https://www.cjoint.com/c/MEhs4DmXS1B

Cdlmnt

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
7 mai 2023 à 21:05

RE,

Ca fonctionne presque bien mais il faut que cela s'applique a toutes les lignes et j'ai essayé mais cela m’empêche de sortir de la celle A en fait tant que O n'est pas remplie mais ne veut pas que j'y aille!!!

On y est presque

Cordialement

0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié le 7 mai 2023 à 21:39

cela m’empêche de sortir de la celle A en fait tant que O n'est pas remplie mais ne veut pas que j'y aille

Pas très clair ! Avec la proposition de via55 (salut amical au passage) que tu as sans doute corrigé (remplacer A2 par A3 dans les deux procédures) ? ou bien avec la mienne.

Peux tu décrire exactement ce que tu as constaté lors d'une tentative de fermer alors que A3 est remplie et O3 vide.

Cdlmnt

0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
7 mai 2023 à 21:52

En fait si je remplie A des que j'en sors j'ai le message mais ne peut rien faire car tjrs le message quelque soit l'action que je fasse!!!!

0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
7 mai 2023 à 22:45

Re,

Effectivement ta demande n'était pas suffisamment claire

Si je comprends bien sur une certaine plage  tu veux vérifier que pour chaque cellule A remplie d'une ligne la cellule O de la même ligne le soit aussi ?

Dans ce cas la macro avant fermeture est à modifier ainsi

Private Sub Workbook_BeforeClose(Cancel As Boolean)
For n = 2 To 20 'boucle sur les lignes 2 à 20 A MODIFIER SELON LES LIGNES A VERIFIER DANS LE FICHIER
If Sheets("Feuil1").Range("O" & n) = "" And Sheets("Feuil1").Range("A" & n) <> "" Then
MsgBox "Vous devez d'abors compléter la cellule O" & n
Cancel = True
Exit For
End If
Next
End Sub

Modifier de la même manière la macro avant enregistrement


0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
7 mai 2023 à 23:28

Sur joint .com j'ai mis une copie du fichier et MERCI pour votre aide. ( achat 2023 )

0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
7 mai 2023 à 23:31

c'est bien de le mettre sur cjoint mais encore faut il copier le lien cjoint du fichier et venir le coller ici pour qu'on puisse y accéder


0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
7 mai 2023 à 23:37

Le voici je pensais que c'était en direct avec la question désolé

https://www.cjoint.com/c/MEhvIJOa0vl

0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
7 mai 2023 à 23:58

ok

bon confirme moi que j'ai bien compris

pour tout n° dans la colonne A il doit y avoir des frais indiqués ou 0 au pire dans la colonne O en regard sinon pas possible ni de sauvegarder ni de fermer ?


0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
8 mai 2023 à 00:05

Re,

Ce ne sont pas des frais mais un mois pour provision de frais qui correspondent à la liste déroulante des mois . De 1a12

Par contre il ne faut le faire qu'à partir de la ligne 199 le crois car je ne pourrais revenir en arrière sur les lignes précédentes....

Ah mince ce n'est pas Osur ce fichier la c'est Q car j'ai deux colonnes a supprimer mais je le ferais après

0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
8 mai 2023 à 00:31
0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
8 mai 2023 à 00:37

Ok j'essaie tout à l'heure merci bonne nuit ????

0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
8 mai 2023 à 09:37

Bponjor,

Il y a bien le message lors de la fermeture mais si on clicque sur ok on sort quand meme il faudrait empecher cette sortie..si possible bien sur

0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
8 mai 2023 à 15:45

Bonjour

Avec un enregistrement automatique avant de fermer si tout est ok en colonne O

https://www.cjoint.com/c/MEinSA4mX4B

Cdlmnt

0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
8 mai 2023 à 19:25

Voici la réponse CCM81 après essais, on arrive quand meme àa fermer à cerrtains moments et surtout si on enregistre avant!

https://www.cjoint.com/c/MEiryPRgG4l

0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
8 mai 2023 à 21:06

De rien,

Ce que j'ai essayé de faire : tu ne peux pas quitter si la colonne O n'est pas Ok,. Et si ok, avant de quitter le fichier est enregistré via la macro.

Si tu as trouvé une séquence où tu peux fermer sans que la colonne O soit ok, ou le fichier n'est pas enregistré, tu expliques comment tu en es arrivé là.

Cdlmnt

0
Fabduf37 Messages postés 11 Date d'inscription dimanche 7 mai 2023 Statut Membre Dernière intervention 9 mai 2023
9 mai 2023 à 19:03

Bonjour,et merci à tous c'est bon tout fonctionne!!!!

0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
9 mai 2023 à 20:01

Bon, il ne te reste plus qu'à mettre le sujet à Résolu (en haut dans ton premier post, les trois petits points)

Bonne soirée

0