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

afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

  • Initiateur de la discussion Initiateur de la discussion fabian123
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fabian123

XLDnaute Occasionnel
Bonjour à toutes et tous!

je viens encore vous ennuyer!

est-il possible (je suppose qu'il faudrait passer par une macro...), dans une plage de cellules données, d'obtenir lorsque j'appuie sur la touche "p" qu'il inscrive automatiquement "présent" dans la cellule sélectionnée. Idem avec "a" pour absent et "c" pour congé...

Merci d'avance!!!
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Bonjour fabian123,
Il est toujours préférable de fournir un petit exemple.
Je pense que quelque chose comme ceci devrait faire l'affaire (A mettre dans le code dee la feuille concernée):
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Change([COLOR=blue]ByVal[/COLOR] Target [COLOR=blue]As[/COLOR] Range)
[COLOR=blue]If[/COLOR] Intersect(Target, Range("A1:G20")) [COLOR=blue]Is Nothing Then Exit Sub[/COLOR]
[COLOR=blue]If[/COLOR] UCase(Target.Value) = "P" [COLOR=blue]Then[/COLOR] Target.Value = "Présent"
[COLOR=blue]If[/COLOR] UCase(Target.Value) = "A" [COLOR=blue]Then[/COLOR] Target.Value = "Absent"
[COLOR=green]'Etc...[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Bonjour Efgé!

Merci pour la réponse si rapide!!! c'est exactement ce que je cherchais!!

Une autre petite question:

je passe par la mise en forme conditionnelle pour "colorier" les cellules en fonction qu'il y est indiqué présent, absent ou congé. (dans l'ordre, rouge, vert, bleu)

est-ce qu'a ton avis je laisse cela comme ça ou je passe par une macro? (style color.index je suppose)?
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re
Pour les couleurs et puisque il y a déja utilisation d'une macro, autant l'utiliser.
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Change([COLOR=blue]ByVal[/COLOR] Target [COLOR=blue]As[/COLOR] Range)
[COLOR=blue]If[/COLOR] Intersect(Target, Range("A1:G20")) [COLOR=blue]Is Nothing Then Exit Sub[/COLOR]
[COLOR=blue]If[/COLOR] UCase(Target.Value) = "P" [COLOR=blue]Then[/COLOR] Target.Value = "Présent": Target.Interior.ColorIndex = 35
[COLOR=blue]If[/COLOR] UCase(Target.Value) = "A" [COLOR=blue]Then[/COLOR] Target.Value = "Absent": Target.Interior.ColorIndex = 3
[COLOR=green]'Etc...[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re,

Efgé,

je te remercie!!! Heureusement que vous êtes là sur le forum pour donner un petit coup de main!!

Encore un grand merci!
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re
Une autre proposition qui remettra la couleur des cellules à blanc si on vide la cellule ce qui donnera vraiment une mise en forme conditionnelle:
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Change([COLOR=blue]ByVal[/COLOR] Target [COLOR=blue]As[/COLOR] Range)
[COLOR=blue]If[/COLOR] Intersect(Target, Range("A1:G20")) [COLOR=blue]Is Nothing Then Exit Sub[/COLOR]
[COLOR=blue]Select Case[/COLOR] UCase(Target.Value)
    [COLOR=blue]Case[/COLOR] "P"
        Target.Value = "Présent": Target.Interior.ColorIndex = 35
    [COLOR=blue]Case[/COLOR] "A"
        Target.Value = "Absent": Target.Interior.ColorIndex = 3
  [COLOR=green] 'Etc[/COLOR]
    [COLOR=blue]Case Else[/COLOR]
        Target.Interior.ColorIndex = xlNone
[COLOR=blue]End Select[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Euh, je sais plus quoi dire!😀😀😀


j'ai juste un petit souci, ta dernière solution est encore mieux, merci! Si j'encode "a" en A1, pas de souci, il indique "absent" en rouge, mais lorsque je retape "a" dans les cellules suivantes (A2, A3...) il recopie juste "absent" sans tenir compte de la couleur de fond... En fait il recopie la cellule A1, comme excel le fait en temps normal... y a une solution à ça? (je me rend compte que je dois un peu beaucoup exagérer!)
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re
Je propose une pirouette, pas du meilleur tonneau je l'avoue...
Copie tout ça dans le code de la feuille:
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Activate()
Application.EnableAutoComplete = [COLOR=blue]False[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Change([COLOR=blue]ByVal[/COLOR] Target [COLOR=blue]As[/COLOR] Range)
[COLOR=blue]If[/COLOR] Intersect(Target, Range("A1:G20")) [COLOR=blue]Is Nothing Then Exit Sub[/COLOR]
[COLOR=blue]Select Case[/COLOR] UCase(Target.Value)
    [COLOR=blue]Case[/COLOR] "P"
        Target.Value = "Présent": Target.Interior.ColorIndex = 35
    [COLOR=blue]Case[/COLOR] "A"
        Target.Value = "Absent": Target.Interior.ColorIndex = 3
   [COLOR=green]'Etc[/COLOR]
    [COLOR=blue]Case Else[/COLOR]
        Target.Interior.ColorIndex = xlNone
[COLOR=blue]End Select[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Code:
[COLOR=blue]Private Sub[/COLOR] Worksheet_Deactivate()
Application.EnableAutoComplete = [COLOR=blue]True[/COLOR]
[COLOR=blue]End Sub[/COLOR]
On désactive la saisie à l'ouverture de la feuille et on réactive à la fermeture.
Cordialement
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re,

merci de te pencher sur mon problème! (va vraiment falloir que je me mette au vba, c'est super utile, mais je n'y comprend pas grand chose...)

Ta solution fonctionne très bien, sauf quand je recopie deux fois en suivants la même lettre.

Si j'encode "a" en A1 et A3, pas de souci, Mais si je le fait en A1 et A2, ça ne fonctionne pas en A2, parcequ'il me propose le mot en entier (je suppose que ça veut dire que la saisie est active...) encore désolé de t'ennuyer avec tout cela...
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Re
Vois l'exemple.
Cordialement

Bonjour le Forum, Efgé, Fabian123

J'ai visionné le fichier et j'ai une question: si on répétait la même action c-à-d si on voulait avoir 3 lignes "Absent" ne pourrait-on pas avoir la case toujours colorié en rouge??

Merci

kdet🙂
 

Pièces jointes

Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Bonjour le fil, kdet, le forum
Ma proposition ne fonctionne que si il y a deux activation de la feuille exemple. Si il n'y a que la feuille exemple, on ne peut l'activée, donc la saisie auto n'est pas arrétée.
Voir nouveau fichier.
Cordialement
 

Pièces jointes

Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"


Re Bonjour Efgé

Merci ça marche

kdet🙂
 
Re : afficher automatiquement "présent" lorsque j'appuie sur la touche "p"

Bonsoir,

J'ai suivi cette discussion car elle m'intéresse.
J'ai téléchargé le dernier fichier envoyé par Efgé.
Je voulais adapter cette macro à un de mes fichiers, or je n'y arrive pas.
Il me semblait pourtant y avoir réussi à l'époque de la discussion, mais mà, je bute...

Concrètement, en prenant le fichier tel qu'il est :
Code:
Select Case UCase(Target.Value)
    Case "P"
        Target.Value = "Présent": Target.Interior.ColorIndex = 35
    Case "A"
        Target.Value = "Absent": Target.Interior.ColorIndex = 3

Si je remplace "présent" par "rateau" ou n'importe quel autre mot, la macro fonctionne.

Idem pour le 2ème cas "absent"

En revanche, j'ai essayé d'ajouter d'autres mots, en faisant un copier coller sur
Code:
 Case "A"
        Target.Value = "Absent": Target.Interior.ColorIndex = 3

et en mettant par exemple case "d"........"dodo", et là rien ne se passe.
Impossible de faire fonctionner la macro. Il me semble même avoir remarqué à un moment que les autres lettres ( a et p ) ne donnaient plus rien sur la feuille.

Quelqu'un aurait il une idée ? Ai-je fait une fausse manip ?

Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
1 K
M
Réponses
5
Affichages
3 K
Michelll38
M
N
Réponses
2
Affichages
969
Nurbo
N
T
  • Question Question
Réponses
4
Affichages
2 K
TravisPittman
T
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…