Formule "référence à"

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

knaekes

XLDnaute Occasionnel
Bonjour,

je souhaite modifier une formule servant à faire référence à une cellule d'un autre onglet, de sorte que cette formule s'adapte à la position de la cellule source.

Ci-joint mon fichier exemple

Merci
 

Pièces jointes

Re : Formule "référence à"

Bonjour.
Le plus simple serait de donner un nom à la cellule, mais au niveau de la feuille et non du classeur, ce qui revient à un nom au niveau du classeur précédé du préfixe de la feuille suivi d'un point d'exclamation.
À +
 
Re : Formule "référence à"

Bonjour
@JHA - le fichier est bien plus complexe que l'extrait joint, la valeur cherchée ne correspond pas forcément au max de la colonne.
Il faut que je recherche la cellule et non la valeur
@Dranreb - je n'ai pas compris tte ton explication, serait-il possible de me faire part de ta solution dans le fichier ?
 
Re : Formule "référence à"

La solution avec cellule nommée fonctionne bien dans mon fichier exemple (merci pour m'avoir fait découvrir cette fonction)
Mais ...
Le fichier en question contient une centaine d'onglets et plusieures cellules par onglet auquel il faut faire référence -> ce qui donne un nombre conséquent de cellules à nommer.
Un autre souci est que le fichier doit permettre l'ajout de nouveau onglet, sans lourdes manipulations, or avec cette méthode il faudra ajouter x nvlles cellules nommées lors de la création d'un nouvel onglet.
Existe-t-il une autre solution?
 
Re : Formule "référence à"

Un code qui ajoute le nom s'il manque dans une procédure évènement.
Soit Feuille un objet Worksheet:
Feuille.Names.Add "Total", RefersTo:="=" & Selection.Address
À la tentative de désactivation de la feuille par exemple.
Je vais tâcher de vous écrire quelque chose pour ThisWorkbook
À +
 
Re : Formule "référence à"

Bonjour,

A tester en C2 :
=SIERREUR(INDIRECT(A2&"!E"&NBVAL(INDIRECT(A2&"!E4:E100"))+3);"")

PS : Je n'avais pas rafraichi ça risque de ne pas marcher non plus !, A tout hasard est ce que la ligne 12 possède une cellule du genre "total" ou autre permettant d'identifier cette ligne ?
 
Dernière édition:
Re : Formule "référence à"

À mettre dans le module ThisWorkbook:
VB:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Dim NF As Object, AF As Worksheet, PlgTot As Range, Adr As String
On Error Resume Next: Set AF = Sh ' Plante si Sh est un Chart et non une Worksheet
If Err Then Exit Sub
If AF.Index = 1 Then Exit Sub
Set PlgTot = AF.[Total]
If Err = 0 Then Exit Sub
Set NF = ActiveSheet
AF.Activate
Adr = Selection.Address
If MsgBox("Cette feuille n'a pas de plage nommée ""Total""." _
   & vbLf & "Est-ce la cellule active (" & Adr & ") ?" _
   & vbLf & "(si vous répondez non, sélectionnez ensuite la" _
   & vbLf & " bonne cellule et retentez de quitter la feuille)", _
   vbYesNo + vbQuestion, "Tentative de quitter la feuille """ & AF.Name & """.") = vbYes Then
   AF.Names.Add "Total", RefersTo:="=" & Adr
   NF.Activate
   End If
End Sub
Pourrait s'améliorer si par exemple c'étai toujours la seule cellule de la colonne E à utiliser la fonction SOMME. Ou SOUS.TOTAL(9,…
À +
 
Dernière édition:
- 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
5
Affichages
153
Réponses
3
Affichages
253
Réponses
7
Affichages
676
Réponses
3
Affichages
253
Réponses
18
Affichages
514
Réponses
43
Affichages
775
Retour