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

V

vicottin

Guest
Bonjour,
J’ai des problèmes pour créer une macro. Pourriez-vous m’aider.

J’ai un classeur avec deux feuilles.

Une feuille « Entreprise » et une autre feuille« employés ».

Ce que je cherche à faire : Quand je clique sur le nom d’un employé dans ma feuille « Entreprise » arriver directement sur la ligne de cet employé dans ma feuille « employés »

Pensez-vous que cela est réalisable ?

Un exemple de fichier est en pièce jointe.
Je vous remercie par avance pour votre aide.
 

Pièces jointes

Re : rechercher valeur

bonjour
Colle le code suivant dans le code de la feuille employés, et regarde si cela te convient

Public colonnes

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
colonnes = Array(18, 19, 20)
If col(Target) = True Then
With Sheets("employés") 'Recherche de l'employé
.Activate
Set r = .UsedRange.Find(Target.Value)
r.Select
End With
End If

End Sub

Function col(cellule) ' controle si la colonneselection nous intéresse
For n = 0 To UBound(colonnes)
If cellule.Column = colonnes(n) Then
col = True
Exit Function
End If
Next
End Function
 
Re : rechercher valeur

Un grand, grand, grand merci pour votre code qui fonctionne parfaitement.
C'est super et ce code va me faire gagner beaucoup de temps.

Juste une précision: est-il possible de sélectionner ma cellule sans avoir la fonction qui s'active pour modifier le mon de la personne par exemple?

Merci de votre retour
 
Re : rechercher valeur

Bonjour,

Modifie le code comme suit :
Code:
Public colonnes

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
 colonnes = Array(18, 19, 20)
 If col(Target) = True Then
 With Sheets("employés") 'Recherche de l'employé
 .Activate
 Set r = .UsedRange.Find(Target.Value)
 r.Select
 End With
 End If
 Cancel = True
End Sub

 Function col(cellule) ' controle si la colonneselection nous intéresse
 For n = 0 To UBound(colonnes)
 If cellule.Column = colonnes(n) Then
 col = True
 Exit Function
 End If
 Next
 End Function

Caillou
 
- 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

Réponses
3
Affichages
202
Réponses
3
Affichages
307
Réponses
5
Affichages
629
Deleted member 453598
D
Réponses
7
Affichages
511
Retour