Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Liste presence

reptil

XLDnaute Nouveau
Étant une daube en excel je cherche la formule pour que quand je mets un "p" dans une cellule il marque automatiquement Present "c" pour Congé ect...

Merci de votre aide
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @reptil, bienvenue sur XLD ,

Une formule peut difficilement faire cela. Si on saisit une lettre dans une cellule, il n'y a plus de formule dans la cellule (il y a la lettre qu'on a tapée et qui a écrasé la formule). Je pense qu'il faut passer par une macro.

A moins que vous ne faites allusion à une autre cellule que celle dans laquelle on a tapé p. Dans ce cas le préciser. Et dans ce cas une formule peut le faire aisément.
 

vgendron

XLDnaute Barbatruc
Bonjour

sinon, il faut passer par du vba avec l'évènement _change de la feuille
mais pour ca, il nous faut ton fichier exemple pour savoir sur quelle ou quelles cellules particulières il faut agir..
 

fcyspm30

XLDnaute Junior
Sans passer par un code vous pouvez écrire les différents statuts ex:
congé
présent
malade
récup

et lorsque vous entrez la première lettre d'un mot déjà écrit (dans cette même colonne) le mot en entier est proposé par Excel.
 

vgendron

XLDnaute Barbatruc
ca donnerait ce code à adapter
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub 'on n'agit que sur la cellule A1
    Application.EnableEvents = False
    Select Case UCase(Target)
        Case "C"
            Target = "Congés"
        Case "P"
            Target = "Présent"
        Case "R"
            Target = "Récup"
            'ajouter autant de case que necessaire
    End Select
    Application.EnableEvents = True
End Sub
 

vgendron

XLDnaute Barbatruc
on peut aussi utiliser une liste de validation, et ALT+flèche vers le haut dans la cellule pour ouvrir la liste

bref..différentes solutions possibles en fonction du besoin de l'appli.
 
Dernière édition:

reptil

XLDnaute Nouveau
ça me plait bien mais comment le faire et qu'est ce que vba voici le fichier test
merci a vous
 

Pièces jointes

  • test.xlsx
    17.6 KB · Affichages: 9

Phébus

XLDnaute Nouveau
Bonjour reptil

pour une solution sans VBA, il faut changer de police. Tu sélectionne ta cellule, tu la met en police
Wingdings 2, et tu écrit "R" (en majuscule). Pour le signe contraire, tu écrit "Q".

Pour un effet encore plus eustatique, tu peux rajouter une mise en forme conditionnelle.

mise en forme conditionnelle / Nouvelle règle ... / Utiliser une formule ... / =$A$1="R" ( ta cellule) / choisir une couleur pour la police (Vert par exemple).

tu refais la même chose pour la lettre "Q" mais en choisissant la couleur rouge.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour,

Une autre piste par vba.

Je n'ai pas choisi une procédure évènementielle, c'était déjà pris (n'est ce pas @vgendron que je salue).

En cliquant sur le petit rond rouge, la macro se lance.

Dans la feuille Liste se trouvent :
  • un tableau structuré pour les raccourcis (et les intitulés).
  • une cellule E1 qui contient le nom de la feuille sur laquelle se trouve la plage à traiter
  • Une cellule E2 qui contient l'adresse de la plage utile
nota : comme le souligne la charte du site , il est préférable dès le début :

remarque : on pourrait modifier la couleur de la cellule en fonction de l'intitulé (facile à faire). Mais pour ma part, je n'aime les tableau "à la sapin de Noël" tout plein de couleurs et de guirlandes ; ça devient vite illisible et confus. C'est une opinion toute personnelle.
 

Pièces jointes

  • reptil- racoourcis et intilulés- v1.xlsm
    27.6 KB · Affichages: 4
Dernière édition:

vgendron

XLDnaute Barbatruc
VBA, ca veut dire qu'il y a du code macro==> l'extension du fichier est .xlsm (m comme macro)

voir en PJ
1) j'ai transformé ton tableau en table structurée que j'ai appelée "t_présence"

2) j'ai adapté le code pour que ca marche sur les deux colonne Matin et après midi
==> pour voir le code: ouvrir l'éditeur VBA (Alt+F11) et double clic dans l'explorateur du projet (à gauche) sur la feuille "Feuil1

3) j'ai aussi créé une autre table structurée pour lister les statuts possible (t_Statuts)
4) j'ai ajouté une colonne E "Avec liste de valid" pour utiliser la table dans la liste de validation

edit:
Hello Mapomme, je pense que ta solution est plus complète car elle permet d'ajouter des éléments sans rentrer dans le code.
 

Pièces jointes

  • test (12).xlsm
    26.3 KB · Affichages: 2

reptil

XLDnaute Nouveau
vraiment top je n'arrive juste pas a ajouter des cases voici les indication(Présent,Congé,Malade,Réunion Syndicale,A.T.,Congé Social)
vraiment merci
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Ma version avec les couleurs. Je me demande bien pourquoi je réponds encore puisque le demandeur n'en a rien à cirer.

La mise en forme se fait dans TS de la feuille "Liste". On recopie la police (nom), police en gras ou pas, en italique ou pas, la taille de la police, la couleur de la police et la couleur du fond.

On peut même après le remplacement modifier les couleurs dans le TS puis relancer la macro pour prendre en compte les modifications de mise en forme désirée.

Cliquez sur la cible dans la cellule A1.
 

Pièces jointes

  • reptil- racoourcis et intilulés- v2.xlsm
    34.1 KB · Affichages: 6
Dernière édition:
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…