Macro excel blocage cellule et format

Résolu/Fermé
ciel2505 - 31 mars 2011 à 13:06
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 4 avril 2011 à 18:33
Bonjour,
Je suis controleur de gestion.
Pourriez vous m'aider svp?
1/ si je mets une croix dans une cellule de la colonne L je ne peux en mettre une dans la cellule correspondante (voisine) colonne M.
2/ si je mets une croix dans une cellule de la colonne M je ne peux en mettre une dans la cellule (voisine) correspondante colonne L.

3/ colonne P: la cellule ne peut être remplie que si on a une croix dans la colonne L + si l'utilisateur n'applique pas la regle du format DD/MM/YYYY-DD/MM/YYYY doit apparaitre un message d'erreur "error format" + impossibilité de noter qq chose dans la cellule correspondante (voisine) de la colonne Q
4/ colonne Q: la cellule ne peut être remplie que si on a une croix dans la colonne M + si l'utilisateur n'applique pas la regle du format DD/MM/YYYY doit apparaitre un message d'erreur "error format" + impossibilité de noter qq chose dans la cellule correspondante (voisine) de la colonne P

En vous remerciant pour votre aide
A voir également:

7 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
31 mars 2011 à 14:17
Bonjour,

1/ que fait on si je saisis un autre caractère que "x" dans L ou M ,

2/ si je me suis trompé (par ex "x" dans L au lieu de M) et/ou en 2° étape après le message d'erreur suite à un mauvais format ?
En résumé, comment ré-initialiser (tout ou par étape)? puisque des cellules sont condamnées

Pas simple!
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 31/03/2011 à 17:28
Salut michel
Si ont vide la cellule (exemple M ) les deux possibilités sont accessibles.
Édit : Et l'indexation des postes sur CCM n'est pas pour rendre la lecture aisée.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
31 mars 2011 à 18:34
Salut Lermite
effectivement l'indexation n'est pas terrible sur CCM

comme le problème était intéressant, j'ai fini par faire pour moi (vis à vis de ciel) une bidouille qui marche mais ca devrait pouvoir être simplifié

comme toi, abandon du suivi

bonne soirée et à 1 2 C 4
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 31/03/2011 à 14:31
Bonjour,
Ce que tu cherche n'est pas facile à faire.
1°) Sélectionner les colonnes M et P
2°) Clic droit >> Format cellules >> Protection >> et décocher Verrouiller
3°) Outils >> Protection >> Protéger la feuille (pas mettre de mot de passe)
4°) clic droit sur l'onglet de la feuille >> Visualiser le code.
4°) Dans la fenêtre coller le code ci-dessous
Option Explicit 

Private Sub Worksheet_Change(ByVal Target As Range) 
Dim TB 
    Application.EnableEvents = False 
    ActiveSheet.Unprotect 
    If Not Intersect(Target, Columns("L")) Is Nothing Then 
        'bloque/débloque la cellule M 
        Target.Offset(0, 1).Locked = UCase(Target) = "X" 
        If UCase(Target) = "X" Then 
            Target.Offset(0, 4).Locked = False 
            Target.Offset(0, 4).Select 
        End If 
    ElseIf Not Intersect(Target, Columns("M")) Is Nothing Then 
        'bloque/débloque la cellule L 
        Target.Offset(0, -1).Locked = UCase(Target) = "X" 
        If UCase(Target) = "X" Then 
            Target.Offset(0, 4).Locked = False 
            Target.Offset(0, 4).Select 
        End If 
    ElseIf Not Intersect(Target, Columns("P")) Is Nothing Then 
        'vérifier les conditions et éventuellement afficher un message 
        TB = Split(Target, "-") 
        If UBound(TB) <> 1 Then 
            MsgBox "Vous devez entrer les dates sous le format JJ/MM/AAAA-JJ/MM/AAAA" 
            Target = "" 
        ElseIf Not (IsDate(TB(0)) Or IsDate(TB(1))) Then 
            MsgBox "Vous devez entrer les dates sous le format JJ/MM/AAAA-JJ/MM/AAAA" 
            Target = "" 
        End If 
         
    End If 
    ActiveSheet.Protect 
    Application.EnableEvents = True 
End Sub

Il y a moyen d'être encore plus précis mais c'est une piste, à toi de l'améliorer.
A+
Note : pour mettre des double date dans les colonnes P et G tu doit les configurer avec le format texte.
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
merci mais ça ne me va pas
apres j'peux plus rien rentrer dans les colonnes M et P
c pr des utilisateurs c pas pr moi ce fichier, ils doivent me le remplir
0
merci en tt cas pr ton aide!
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 31/03/2011 à 15:03
1/ si je mets une croix dans une cellule de la colonne L je ne peux en mettre une dans la cellule correspondante (voisine) colonne M.
????
Tu n'a pas suivi l'ordre des opérations à effectuer ???
Recommence avec un nouveau classeur

Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
bah oui je viens de reessayer
quand j'essaie de mettre une croix dans la colonne L pr tout tester il me sort que la cellule ou la feuille est protégée dc je peux plus rien faire?
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 31/03/2011 à 15:29
tu n'a pas fait...
2°) Clic droit >> Format cellules >> Protection >> et décocher Verrouiller
AVANT DE VERROUILLER.
Si tu ne sais pas suivre des explications détaillées je ne vois pas comment on va pouvoir se comprendre.
Voir c'est Exemple
0
MERCI CA MARCHE JE M'ETAIS TROMPEE EN EFFET
par contre pour le format de la colonne Q il n'y a rien dans la macro quand je duplique dessous celle de la colonne P en changeant P par Q et en changeant le format date rien ne se passe?
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
31 mars 2011 à 15:36
pas compris, explique mieux
0
pardon c vrai que moi j'ai le fichier devant moi
ça je ne le retrouve pas dans la macro?
4/ colonne Q: la cellule ne peut être remplie que si on a une croix dans la colonne M + si l'utilisateur n'applique pas la regle du format DD/MM/YYYY doit apparaitre un message d'erreur "error format" + impossibilité de noter qq chose dans la cellule correspondante (voisine) de la colonne P
En vous remerciant pour votre aide
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 31/03/2011 à 17:00
SUPPRIME, JE NE SUIS PAS UN CERVEAU MACRO
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 31/03/2011 à 17:22
Salut Michel
Quel rapport ???
Haarfff.. j'ai suivi les autres postes.. (ce que je n'avais pas fait)
Abandon du suivi..
0

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

Posez votre question
ciel2505 Messages postés 11 Date d'inscription jeudi 31 mars 2011 Statut Membre Dernière intervention 1 avril 2011
31 mars 2011 à 16:35
Bonjour
Merci mais ça ne fctionne pas
si je mets x en cellule L5 (mes enonces vt de lignes 1 à 4) je reussis à mettre x en cellule M5 et vice versa
si je mets un format date faux apparemment la colonne Q le prend
si je mets une croix sans L5 j'arrive quand meme à rentrer une date dans Q alors que je devrais ne pouvoir que la rentrer dans P
si je mets une croix dans M5 j'arrive quand meme à rentrer une date dans P alors que je ne devrais pouvoir la rentrer que dans Q
j'en peux plus de cette macro ;-)
je veux un cerveau macro!
0
ciel2505 Messages postés 11 Date d'inscription jeudi 31 mars 2011 Statut Membre Dernière intervention 1 avril 2011
31 mars 2011 à 17:07
je parle de moi quand je dis que je veux un cerveau macro, je suis meme pas capable de sortir un end sub contrairement à vous sur le forum!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
31 mars 2011 à 16:59
je veux un cerveau macro!

Le débile qui a essayé de t'aider te remercie
0
ciel2505 Messages postés 11 Date d'inscription jeudi 31 mars 2011 Statut Membre Dernière intervention 1 avril 2011
31 mars 2011 à 17:01
je parle de moi quand je dis que je veux un cerveau macro, je suis meme pas capable de sortir un end sub contrairement à vous sur le forum!
je suis desolée que tu l'aies pris pour toi!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
31 mars 2011 à 17:04
Ben voyons, si t'as pas la réponse dans les 2 heures, tu reposes la question ailleurs...

Ca doit être joyeux de bosser avec toi
0
ciel2505 Messages postés 11 Date d'inscription jeudi 31 mars 2011 Statut Membre Dernière intervention 1 avril 2011
31 mars 2011 à 17:06
je ne veux pas rentrer dans ce genre de discussion ni ce genre de phrases.
comme je te l'ai dit je dois presenter une solution pour ce soir.
je te remercie pour ton aide et ta comprehension
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
31 mars 2011 à 17:17
Dans les paragraphes case12 et case 13 tu passe le "x" en majuscule "X"
0
ciel2505 Messages postés 11 Date d'inscription jeudi 31 mars 2011 Statut Membre Dernière intervention 1 avril 2011
31 mars 2011 à 17:21
je m'excuse j'ai essayé aussi en majuscule mais ça marche pas...
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
Modifié par Patrice33740 le 1/04/2011 à 10:51
Bonjour le Forum,

Moi aussi de suis ... à la retraite.

J'ai rapidement compris qu'il fallait appliquer quelques règles fondamentales avec l'utilisateur lambda pour éviter de nombreux problèmes, en particulier quand on reçoit de nombreux fichiers de différentes sources :
- ne jamais mettre de macro dans les fichiers utilisateurs
- demander des informations simples (éviter toute syntaxe particulière)
- utiliser la puissance de calcul d'Excel pour transformer ces informations
- protéger les feuilles de calcul (sans mot de passe, ça ne sert qu'à être oublié)
- définir le format numérique des valeurs à saisir, notamment des dates.
- utiliser des formules qui laissent des libertés à l'utilisateur, beaucoup de SI() et N()
- utiliser la validation des données chaque fois que c'est utile pour :
----- afficher un message d'information pour la saisie
----- contrôler l'information saisie et afficher le message d'erreur éventuel

Donc pour répondre aux question :
1) en L2 : Données / Validation / Personnalisé / Formule : =M2<>"x"
2) en M2 : Données / Validation / Personnalisé / Formule : =L2<>"x"
3) en P2 : Données / Validation / Date ou Personnalisé ....
4) idem
Cordialement
Patrice
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
1 avril 2011 à 11:31
J'ai rapidement compris ...
hé oui, on est des c...s.

T'es le meilleur , d'ailleurs tu en as conscience, que serait - on sans toi...
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
1 avril 2011 à 11:50
Michel, cette réponse est destinée à ciel 2505 je n'ai fait que recopier ici ma réponse faite dans ce post :
https://forums.commentcamarche.net/forum/affich-21184746-excel-signer-un-montant-negatif-automatiquement#4

Ce sont des conseils avisés, destinés au « contrôleur de gestion »
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
1 avril 2011 à 12:14
Bien sûr, si ca vient de part, ca ne peut ¨être que "des conseils avisés", en toute modestie!
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
2 avril 2011 à 16:51
Bel essais de rattrapage :-)
Je te rappel que nous sommes tous bénévoles et que nous aidons dans le mesure de nos moyens qui ne sont certes pas aussi illimités que les tient.
Et nous ne sommes pas ici pour que tu arrive avec tes gros sabots pour nous faire la leçon.
0
comment puis je faire pour cloturer ce sujet (j'ai completement changé mon projet pr en faire un plus simple où il me faut qu'une mini macro?)
0