Recuperer le nom d'une cellule

allarmen

XLDnaute Junior
Bonsoir à tous !

J'ai crée un planning de rendez-vous. Lorsque je clique sur une cellule je souhaiterais avex l'aide d'une macro évènementielle récupérer le nom de cette cellule (qui sera le nom d'un utilisateur) dans une autre cellule (peu importe l'endroit c'est pour le code)



Merci à celui ou celle qui sera assez expert(e) pour connaitre ce code.


Bonne année 2010
 

jp14

XLDnaute Barbatruc
Re : Recuperer le nom d'une cellule

Bonsoir
Bonsoir et merci pour votre aide


Ne semble pas fonctionner meme en mettant target.name :(
Autant pour moi, je viens de comprendre le problème.
Il faut récupérer le nom associé à la cellule.
Le principe de la macro est le suivant :
Target donne l'adresse de la cellule et le nom de la feuille
Une boucle
For Each x In Names
x.Name
Next
va permettre de lister tout les noms du fichier
Un test sur le nom de la feuille et l'adresse va permettre de récupérer le nom.

JP
 
Dernière édition:

allarmen

XLDnaute Junior
Re : Recuperer le nom d'une cellule

Merci JP,

En fait je n'ai pas d'autres choix qu'un simple click sinon mon projet ne pourra pas fonctionner.

Il n'existe donc pas de solution pour récupérer le nom d'une cellule sur un simple click?

Si toi tu ne trouves pas j'imagine que non :(
 

jp14

XLDnaute Barbatruc
Re : Recuperer le nom d'une cellule

Bonsoir

Merci JP,

En fait je n'ai pas d'autres choix qu'un simple click sinon mon projet ne pourra pas fonctionner.

Il n'existe donc pas de solution pour récupérer le nom d'une cellule sur un simple click?

Si toi tu ne trouves pas j'imagine que non :(

Il faut que je développe la procédure.

Code:
Sub RecupereNoms()
Dim x As Name
With Sheets(ActiveSheet.Name)
    '.Cells.ClearContents
For Each x In Names
     .Range("A65536").End(xlUp).Offset(1, 1) = Right(x.RefersTo, Len(x.RefersTo) - 1)
     .Range("A65536").End(xlUp).Offset(1, 0) = x.Name
Next
End With
End Sub
Ci dessus code pour récupérer les noms de la feuille.
JP
 

allarmen

XLDnaute Junior
Re : Recuperer le nom d'une cellule

Merci beaucoup JP on semble se rapprocher de la solution. J'ai testé mais comment on fait pour ajouter une commande pour recuperer le nom de la cible dans une autre celulle. par exemple range("k36").


encore merci pour ton aide
 

jp14

XLDnaute Barbatruc
Re : Recuperer le nom d'une cellule

Bonsoir

Ci joint les procédures
appel de la fonction
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim x As Name
Dim adresse As String
Dim feuille As String
adresse = Target.Address
feuille = Target.Worksheet.Name
nom = RecupereNoms(feuille, adresse)
If nom <> "" Then range("k36") = nom
End Sub

Fonction
Code:
Function RecupereNoms(feuille As String, adresse As String)
Dim x As Name
Dim adresse2 As String
Dim feuille2 As String
Dim pos As Byte

With Sheets(feuille)
For Each x In Names
    pos = InStr(x.RefersToLocal, "!")
    feuille2 = Mid(x.RefersToLocal, 2, pos - 2)
    adresse2 = Mid(x.RefersToLocal, pos + 1, 10)
    If feuille2 = feuille And adresse2 = adresse Then
        RecupereNoms = x.Name
        Exit Function
    End If
Next
End With
End Function

A tester

JP
 
Dernière édition:

allarmen

XLDnaute Junior
Re : Recuperer le nom d'une cellule

Merci beaucoup JP,


j'ai un message d'erreur sur une fonction :

nom = RecupereNoms(feuille, adresse)


Cela devient trop baleze pour moi je pense. Tu es bcp trop fort la :)


merci en tous cas pour tes efforts. Les gens sur ce forum doivent apprécier ton soutien et sans doute aussi les entreprises....
 

Discussions similaires

Réponses
7
Affichages
712
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 330
Messages
2 087 337
Membres
103 524
dernier inscrit
Smile1813