faire référence à une liste dans une formule

bruderez

XLDnaute Nouveau
Bonjour

Je cherche à automatiser mes formules . Dans une feuille de calcul je fait référence à une feuille de calcul dans un autre tableau excel
ma formule =[AUDIT.xlm]JEAN!$A$19
est il possible de remplacer automatiquement JEAN par un autre prénom sachant que j'ai 10 collaborateurs en faisant référence à une liste déroulante

Cordialement
 

AtTheOne

XLDnaute Impliqué
Supporter XLD
Bonjour à tous, Bonjour @bruderez
2 cas :
  • Ton classeur AUDIT est ouvert, tu peux utiliser la fonction INDIRECT en recomposant l'adresse de la cellule à renvoyer :
    Enrichi (BBcode):
    =INDIRECT("'"&B3&C3&"'!"&D3)
    avec dans B3 le nom du classeur, dans C3 le nom de la Feuille (collaborateur), En D3 l'adresse de la cellule.
  • Ton classeur peut être fermé, tu dois utiliser une macro, l'événement Worsheet_Change de ta feuille
    Enrichi (BBcode):
    Private Sub Worksheet_Change(ByVal Target As Range)
         If Target.Count > 1 Then Exit Sub
         If Intersect(Target, Union(Me.[Nom_Classeur], Me.[Nom_Collaborateur], Me.[Nom_Cellule])) Is Nothing Then Exit Sub
    Me.[Contenu_Lu].Formula = "='" & Me.[Nom_Classeur] & Me.[Nom_Collaborateur] & "'!" & Me.[Nom_Cellule]
    End Sub
    Nom_Classeur, Nom_Collaborateur, Nom_Cellule étant des nom définis qui contiennent respectivement le nom du classeur Audit, le nom du collaborateur, l'adresse de la cellule.
Voir les 3 fichiers joints (ne pas oublier de changer le chemin du classeur AUDIT en fonction de l'endroit où tu placeras ce fichier)

Amicalement
Alain
 

Pièces jointes

  • Lire Via macro Classeur AUDIT Fermé.xlsm
    18 KB · Affichages: 3
  • Lire Via Indirect Classeur AUDIT ouvert.xlsx
    11.6 KB · Affichages: 2
  • AUDIT.xlsx
    17.3 KB · Affichages: 2

Discussions similaires

Statistiques des forums

Discussions
311 730
Messages
2 081 978
Membres
101 854
dernier inscrit
micmag26