Effacement conditionnel de cellules

Bonjour;

Dans le cadre d'un formulaire de réservation de créneaux de rdv, les intervenants renseignent des champs et réservent leur créneau. Mais ultérieurement ils peuvent annuler et rendre le créneau disponible. dans ce cas, il sélectionne dans la list-box 'Etat' l'option "créneau disponible" ce qui devra avoir pour effet d'effacer tous les champs renseignés préalablement.

Autrement dit à chaque fois que "créneau disponible" est renseignés les autres champs sont effacés

Cela peut-il se faire simplement? ou faut-il obligatoirement utiliser une macro avec une condition? et dans ce cas comment faire pour qu'elle soit lancé automatiquement?

PS je ne connais rien en VBA... il faudrait que la solution soit compatible excel 2013 et 2010

D'avance merci pour votre aide

Cordialement

11formulaire1.zip (4.84 Ko)

bonsoir,

Voir en pièce jointe.

A+

14formulaire1.zip (10.17 Ko)

Bonjour Erasmes,

Bonjour galopin01,

La même en gardant les couleurs et les créneaux

9formulaire1.zip (12.92 Ko)

A+

Bonjour et Super les gars, un grand merci;

ça marche! le choix créneau disponible efface bien toute la ligne et affiche la ligne en vert

j'ai voulu déplacer cette colonne "Etat d'inscription" et la mettre en colonne 2, du coup c'est parfait : j'ai les bonnes couleurs, cela efface bien les champs renseignés tout en gardant l'affichage 'créneau disponible'. le seul pb, c'est que cela ne marche que pour les 2 premières lignes (cf : fichier joint), et je ne comprend pas pour quoi...

Encore merci pour votre aide

3formulaire3.zip (12.87 Ko)

Bonjour,

Dans l'instruction suivante, on cherche à cibler la plage qui lorsqu'elle est modifiée, initie le lancement du traitement.

If Target.Count = 1 And Not Application.Intersect(Target, Range("I15:I" & Range("I15").End(xlDown).Row)) Is Nothing

Il s'agit bien sûr de la plage qui concerne l'état de l'inscription Range("I15:I" & Range("I15").End(xlDown).Row)

Si tu déplaces cette plage, il faut modifier le code en conséquence.

J'ai également modifié la mise en forme conditionnelle.

5formulaire3.zip (12.67 Ko)

A+

(Re)Bonjour;

OUi bien sur... merci bcp...

J'essai de mettre en visibilité 4 jours programmés, pour que les personnes aient une visibilité sur 1mois; et avec la recopie on perd cette option d'effacement. (cf fichier joint)

cela doit aussi être une question de plage..., Mais mes compétences en VBA étant proche de 0... comment faire?

Encore merci...

3formulaire.zip (11.59 Ko)

Tes plages étant fixes, cela simplifie le code.

La plage à prendre en compte est déclarée comme étant l'union de 4 plages avec l'instruction

Set Plage = Application.Union(Range("B16:I19"), Range("B24:I27"), Range("B32:I35"), Range("B40:I43"))
8formulaire4.zip (10.92 Ko)

J'ai à nouveau modifié les mises en forme conditionnelles. Si tu ne comprends pas cette MFC, dis-moi où ça bloque.

A+

Merci frangy;

C'est parfait, ça marche du feu de dieu...!

Je te remercie infiniment...

Bonne journée

A+

Rechercher des sujets similaires à "effacement conditionnel"