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

Créer une macro

  • Initiateur de la discussion Initiateur de la discussion raid56
  • 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 !

R

raid56

Guest
Totalement inexpérimenté dans ce domaine je pense avoir besoin de créer une macro.

L'objectif est de saisir un N° (de dossard sur une ligne d'arrivée ) en C8 et d'afficher automatiquement :
1 Le nom et prénom du coureur en D8 et E8,
2 l'heure d'arrivée dans la cellule voisine F 8
de Renvoyer automatiquement la saisie en C9 pour la saisie suivante
J'ai bien tenté par la formule " MAINTENANT" mais trop long pour l'opérateur qui doit saisir rapidement le flux de coureurs.
Merci de votre aide
 
Re : Créer une macro

Bonjour
Avec une plage nommée "NomPrénom" quelque part, cette procédure dans le module de la feuille dvrait faire l'affaire:
VB:
Private Sub Worksheet_Change(ByVal Target As  Range)
If Target.Column <> 3 Then Exit Sub
Application.EnableEvents = False
Target.Offset(, 1).FormulaR1C1 = "=INDEX(NomPrénom,RC3,1)"
Target.Offset(, 2).FormulaR1C1 = "=INDEX(NomPrénom,RC3,2)"
Target.Offset(, 3).Value = Now
Target.Offset(1).Select
Application.EnableEvents = True
End Sub
Remarque: Il devrait être possible de faire un peu mieux avec un userform qui détecte la frappe de la barre Espace et note l'heure aussitot: à charge d'un opérateur travaillant au pavé numérique de taper les dossards dans l'ordre énoncé par celui qui ne regarde que la ligne d'arrivée, la main à fleur de la barre espace.

Cordialement.
 
Dernière édition:
Re : Créer une macro

Bonjour

Super...et merci
Petite complication nous espèrons 4000 participants sur 4 courses avec des départs différents et des séries de dossards différentes mais la même ligne d'arrivée ...
Je souhaite mettre cette saisie en parallèle avec la saisie des puces sur le tapis pour répondre aux réclamations.
Sportivement
 
Re : Créer une macro

Merci beaucoup

C'est bien le but rechercher, simplifier et réduire au mini la saisie
Je vais essayer de mettre en application.Mais celà s"annonce laborieux compte tenu d emon inexpéreince
Comment nommer la plage "nomprénom"
 
Re : Créer une macro

Pouvez vous m'aider à mettre en forme ? Merci
Sub Macro1()
'
' Macro1 Macro
'

'
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 3 Then Exit Sub
Application.EnableEvents = False
Target.Offset(, 1).FormulaR1C1 = "=INDEX(NomPrénom,RC3,1)"
Target.Offset(, 2).FormulaR1C1 = "=INDEX(NomPrénom,RC3,2)"
Target.Offset(, 3).Value = Now
Target.Offset(1).Select
Application.EnableEvents = True
End Sub
 
Re : Créer une macro

Où est-ce que vous coincez ?
Ah! Vous me donnez l'impression d'avoir mis le code dans un module ordinaire, rubrique "Modules" au lieu de l'avoir mis dans le bon module de feuille de la rubrique "Microsoft Excel Objets"…
À +
 
Re : Créer une macro

Il doit impérativement être mis dans le module de la feuille et pas dans un module ordinaire.
Vous pouvez faire un clic droit sur l'onglet et sélectionner la ligne de menu contextuel "Visualiser le code"
À +
 
Re : Créer une macro

Merci C'est Génial
Est il possible de faire une petite modif ?
L'affichage du Nom Prénom se fait très bien pour le première série de 1 à 598, mais pas pour les autres , or j'ai 4 courses distinctes avec 4 séries de dossard
0 à 1000
1001 à 2000
2001 à 3000
4001 à 5000
Je vous met le fichier en PJ
Bien Cordialt
Merci
 
Re : Créer une macro

[Merci C'est Génial
Est il possible de faire une petite modif ?
L'affichage du Nom Prénom se fait très bien pour le première série de 1 à 598, mais pas pour les autres , or j'ai 4 courses distinctes avec 4 séries de dossard
0 à 1000
1001 à 2000
2001 à 3000
4001 à 5000
Peut t on automatiser l'enregistrement ?
Je vous met le fichier en PJ
Bien Cordialt
Merci
 

Pièces jointes

Dernière modification par un modérateur:
Re : Créer une macro

Modifiez le code comme suit:
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 3 Then Exit Sub
Application.EnableEvents = False
Target.Offset(, 1).FormulaR1C1 = "=VLOOKUP(RC3,NomPrénom,2,FALSE)"
Target.Offset(, 2).FormulaR1C1 = "=VLOOKUP(RC3,NomPrénom,3,FALSE)"
Target.Offset(, 3).Value = Now
Target.Offset(1).Select
Application.EnableEvents = True
End Sub
Cordialement.
 
Re : Créer une macro

Un grand merci c'est génial !!!Plus de stylo; plus de papier!
Afin d'éviter toute perte peut-on automatiser l'enregistrement après la saisie ?
Cordialement.
 
Dernière modification par un modérateur:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
0
Affichages
863
jeromepineau33
J
C
Réponses
9
Affichages
4 K
CDavid2007
C
N
Réponses
1
Affichages
1 K
B
N
Réponses
7
Affichages
2 K
Noémie
N
C
Réponses
3
Affichages
5 K
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…