Entrer dans une formule "feuille précédente"
rhyss
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Soient les feuilles 1, 2, 3... d'un classeur.
Dans la feuille 1 (semaine 1) cellule A1 "!" pour signaler un impayé.
Dans la feuille 2 (semaine 2) cellule A1 le "!" est reporté mais si colonne B on met "R" pour signaler que l'impayé est régularisé, le "!" de la colonne A1 s'efface. S'il n'y a pas paiement, le "!" reste, et est reporté feuil 3, le tout à partir de la formule :
=SI(ET(Feuil1!A1="!";Feuil2!B1="R");"";Feuil1!A1)
Dans la feuille 3 (semaine 3) cellule A1 formule ci-dessus, mais qui renvoie non plus à la feuil 1, mais à la feuille 2. Il faudrait donc que je ré-écrive la formule 52 fois, pour toutes les semaines de l'année, en changeant à chaque fois la référence à la page. Au lieu de mettre dans la formule feuil1, ou feuil2... comment introduire la notion de "feuille précédente" pour pouvoir copier automatiquement la formule d'une feuille à l'autre ?
Merci de votre aide.
Soient les feuilles 1, 2, 3... d'un classeur.
Dans la feuille 1 (semaine 1) cellule A1 "!" pour signaler un impayé.
Dans la feuille 2 (semaine 2) cellule A1 le "!" est reporté mais si colonne B on met "R" pour signaler que l'impayé est régularisé, le "!" de la colonne A1 s'efface. S'il n'y a pas paiement, le "!" reste, et est reporté feuil 3, le tout à partir de la formule :
=SI(ET(Feuil1!A1="!";Feuil2!B1="R");"";Feuil1!A1)
Dans la feuille 3 (semaine 3) cellule A1 formule ci-dessus, mais qui renvoie non plus à la feuil 1, mais à la feuille 2. Il faudrait donc que je ré-écrive la formule 52 fois, pour toutes les semaines de l'année, en changeant à chaque fois la référence à la page. Au lieu de mettre dans la formule feuil1, ou feuil2... comment introduire la notion de "feuille précédente" pour pouvoir copier automatiquement la formule d'une feuille à l'autre ?
Merci de votre aide.
A voir également:
- Entrer dans une formule "feuille précédente"
- Formule si ou - Guide
- Rechercher ou entrer l'adresse - Guide
- Entrer les informations d'identification reseau - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule mathématique - Télécharger - Études & Formations
3 réponses
Bonjour tout le monde,
Et une 3ème proposition en fonction personnalisée à mettre dans un module :
Formule à saisir dans les feuilles :
=FeuilleRelative(A1;-1)
-1 : feuille précédente
-2 : 2 feuilles avant
1 : feuille suivante
etc
Accepte les références absolues pour la cellule : $A$1 ou $A1 ou A$1
eric
Et une 3ème proposition en fonction personnalisée à mettre dans un module :
Function FeuilleRelative(Référence As Range, offsetFeuille As Long)
Dim shIndex As Long
Application.Volatile
shIndex = Application.Caller.Worksheet.Index
FeuilleRelative = Worksheets(shIndex + offsetFeuille).Range(Référence.Address)
End Function
Formule à saisir dans les feuilles :
=FeuilleRelative(A1;-1)
-1 : feuille précédente
-2 : 2 feuilles avant
1 : feuille suivante
etc
Accepte les références absolues pour la cellule : $A$1 ou $A1 ou A$1
eric
Salut le forum
Pour remplacer Feuil1!A1 si tu es sur la Feuil2
Tu crées pas Insertion > Nom définir
NomFeuille fait référence à
Ta formule =SI(ET(Feuil1!A1="!";Feuil2!B1="R");"";Feuil1!A1) devient
Mytå
Pour remplacer Feuil1!A1 si tu es sur la Feuil2
=INDIRECT(GAUCHE(NomFeuille;5) & DROITE(NomFeuille;NBCAR(NomFeuille)-5)-1&"!A1")
Tu crées pas Insertion > Nom définir
NomFeuille fait référence à
=STXT(CELLULE("nomfichier");TROUVE("]";CELLULE("nomfichier"))+1;20)
Ta formule =SI(ET(Feuil1!A1="!";Feuil2!B1="R");"";Feuil1!A1) devient
=SI(ET(INDIRECT(GAUCHE(NomFeuille;5) & DROITE(NomFeuille;NBCAR(NomFeuille)-5)-1&"!A1")="!";INDIRECT(NomFeuille&"!B1")="R");"";INDIRECT(GAUCHE(NomFeuille;5) & DROITE(NomFeuille;NBCAR(NomFeuille)-5)-1&"!A1"))
Mytå
Bonsoir
sur le même principe mais quel que soit le nommage des feuilles :
la formule :
les 3 noms à définir :
Cordialement
sur le même principe mais quel que soit le nommage des feuilles :
la formule :
=SI(ET(INDIRECT(ma_feuille_precedente&"!A1")="!",INDIRECT(ma_feuille&"!B1")="R"),"",INDIRECT(ma_feuille_precedente&"!A1"))
les 3 noms à définir :
ma_feuille =STXT(CELLULE("nomfichier",!$A$1),TROUVE("]",CELLULE("nomfichier",!$A$1))+1,255)
ma_feuille_precedente =INDEX(mes_feuilles,EQUIV(ma_feuille,mes_feuilles,0)-1)
mes_feuilles =STXT(TRANSPOSE(LIRE.CLASSEUR(1)),TROUVE("]",TRANSPOSE(LIRE.CLASSEUR(1)))+1,255)
Cordialement