Numbers : recopier la fonction INDIRECT

Celedo

Membre confirmé
13 Décembre 2020
30
5
54
Bonjour, je suis bloqué sur un problème de recopie. J'ai inséré une fonction Indirect dans une cellule d'un tableau récapitulatif (une liste d'élèves) qui récupère une valeur dans des feuilles différentes (une par élève). Valeur qui se trouve dans une cellule identique aux tableaux contenus dans chaque feuille et qui a donc la même référence. La fonction ... fonctionne puisqu'elle me retourne la bonne valeur pour le premier élève. Mais si je veux copier la fonction au reste de la liste, je ne parviens pas à récupérer les valeurs de chaque élève. Cela ne copie que la valeur du premier élève. Cela fonctionne sur Excel, mais pas sur Numbers. Normal ? Est-ce lié à un simple problème de syntaxe ? ...
Merci par avance.
 
Dernière édition par un modérateur:
Salut, manifestement cette fonction n'attire pas les foules. J'ai un problème de ce genre, mais je n'arrive même pas à avoir un résultat. Peux-tu me dire comment tu as écrit ta formule ?
Sur un autre forum, j'ai eu une réponse, qui ne marche pas, toujours une erreur de syntaxe.
 
Bonjour,
Je n’ai pas le Mac sous la main mais avec Numbers pour iPad, ça fonctionne avec la formule :
INDIRECT(CONCATENER($A2;"::Tableau 1::B2")) que l’on peut étendre, à condition dans mon exemple de nommer la feuille de chaque élève avec le nom figurant en colonne A, et que la valeur désirée soit en B2 de chaque feuille ?
 
Bonjour,
Je n’ai pas le Mac sous la main mais avec Numbers pour iPad, ça fonctionne avec la formule :
INDIRECT(CONCATENER($A2;"::Tableau 1::B2")) que l’on peut étendre, à condition dans mon exemple de nommer la feuille de chaque élève avec le nom figurant en colonne A, et que la valeur désirée soit en B2 de chaque feuille ?
Après vérification, ça marche également ainsi sur Mac !
Remarques: ne pas oublier les apostrophes, vérifier également le nom du tableau (tableau 1 par défaut) utilisé au sein de chaque feuille individuelle d’élève.
 
-Bonjour,
Je n’ai pas le Mac sous la main mais avec Numbers pour iPad, ça fonctionne avec la formule :
INDIRECT(CONCATENER($A2;"::Tableau 1::B2")) que l’on peut étendre, à condition dans mon exemple de nommer la feuille de chaque élève avec le nom figurant en colonne A, et que la valeur désirée soit en B2 de chaque feuille ?
Bon, j'ai semble-t-il trouvé la bonne syntaxe, et sur Mac/Numbers, elle s'écrit ainsi : 76::Tableau 1::C19
Dans la cellule C4 où elle est inscrite, sur la feuille 78, elle recopie le contenu de la cellule C19 de la feuille 76.
On note que la fonction INDIRECT n'apparaît pas.
76 représente une page paire d'un carnet virtuel de 150 pages, j'ai une page type sur laquelle sont copiées les formules, que je veux pouvoir dupliquer en faisant en sorte que la feuille 76 soit chaque fois incrémentée de 2, pour ajouter des pages paires au fur et à mesure de la progression du carnet.
Je ne sais pas comment indiquer cette incrémentation pour que ce soit automatique et ne m'oblige pas à revoir les 4 formules de chaque page.
 

Fichiers joints

  • Capture d’écran 2023-09-20 à 21.42.02.jpg
    Capture d’écran 2023-09-20 à 21.42.02.jpg
    60,1 KB · Affichages: 11
La fonction INDIRECT permet de viser une cellule variant avec une formule, et permet de répondre à la question initiale du fil.
Je n’ai pas compris exactement ta demande : qu’est-ce qui évolue dans ton cahier ? 150 Pages c’est le nombre maximal de pages existantes ? Du coup pourquoi citer la 78 ? C’est toujours sur cette page qu’auront lieu les reports?…
 
J’ai relu et peut-être compris, voir si la solution suivante « partiellement manuelle » peut aider :
- lorsqu’on insère la nouvelle page, le modèle de cette dernière contient en cellule c4 la formule suivante:
SI(ESTVIDE(A$1);"Inserer numero de page en A1";INDIRECT(CONCATENER(A1−2;"::Tableau 1::C19")))
  • la feuille en question est nommée selon le numéro de page attendu,
  • ce numero de page est introduit dans la nouvelle feuille dans la cellule A1 dans mon exemple ci-dessus, mais on peut la remplacer par une autre cellule à condition de le répercuter à chaque occurrence de A1 dans la formule. Tant que la cellule indiquée est vide, il est indiqué en c4 de remplir cette cellule supplémentaire avec le numéro de page N, et dès qu’elle est correctement remplie cela va chercher la valeur de C19 de la page N-2.
PS: attention, il n’y a aucune gestion d’erreur de saisie, si on ne nomme pas bien la nouvelle feuille, ou si on ne reporte pas le bon nombre en A1…
 
La fonction INDIRECT permet de viser une cellule variant avec une formule, et permet de répondre à la question initiale du fil.
Je n’ai pas compris exactement ta demande : qu’est-ce qui évolue dans ton cahier ? 150 Pages c’est le nombre maximal de pages existantes ? Du coup pourquoi citer la 78 ? C’est toujours sur cette page qu’auront lieu les reports?…
Je ne me suis pas très bien exprimé. J'ai cité la page 78, parce que c'est celle qui est visible dans ma copie d'écran.
En fait, les résultats de la ligne 19 de la page 2 sont à reporter sur la ligne 4 de la page 4, colonne pour colonne. Ceux de la ligne 19 de la page 4 sont à reporter sur la ligne 4 de la page 6, et ainsi de suite jusqu'à la page 148.
J'ai cité le nombre de 150 pages pour indiquer qu'il me faudrait modifier à la main 4 (4 colonnes de résultats) x 75 cellules, si je ne trouve pas le moyen d'indiquer dans la fonction que les résultats à reporter se trouvent sur la feuille (onglet ?) précédente, et ce dans une feuille vierge que je duplique et renomme en l'incrémentant (à la main, ça c'est possible) au fur et à mesure de l'avancée de mon carnet.
En fait j'ai commencé cette recopie de carnet en cours de route (en fait ça commence page 62), et j'ajoute des fonctions ou informations au fur et mesure de mes besoins. C'est basé sur un carnet réel, qui est le seul à faire foi auprès des autorités, sur lequel je recopie les informations calculées dans ce tableur.
 
Dernière édition:
Alors c’est bien ce que j’ai compris après coup et je pense que mon message suivant peut répondre à vos attentes ?
 
Alors c’est bien ce que j’ai compris après coup et je pense que mon message suivant peut répondre à vos attentes ?
Le principe du report expliqué ci-dessus en images pour une seule colonne (sur iPad mais ça fonctionne de la même manière sur Mac).

PS1 : pour les deux colonnes heures et minutes, les pieds de colonnes sont évidemment
  • pour D19 : MOD(SOMME(D4:D18);60)
  • pour C19 : SOMME(C4:C18)+(SOMME(D4:D18)−D19)÷60

PS2 : pour parer à un besoin de remplissage automatique, entrer la forme $A$1 dans la formule pour la cellule contenant le numéro de page

PS3 : Désolé pour les :D, lire : suivi de D sans espace (je ne sais pas comment désactiver ces emojis automatiques)
 

Fichiers joints

  • IMG_3949.jpeg
    IMG_3949.jpeg
    149,6 KB · Affichages: 6
  • IMG_3950.jpeg
    IMG_3950.jpeg
    154,6 KB · Affichages: 6
  • IMG_3951.jpeg
    IMG_3951.jpeg
    110,7 KB · Affichages: 5
Dernière édition:
PS3 : Désolé pour les :D, lire : suivi de D sans espace (je ne sais pas comment désactiver ces emojis automatiques)
En mettant la formule dans un bloc de code ;) :
Bloc de code:
pour D19 : MOD(SOMME(D4:D18);60)
pour C19 : SOMME(C4:C18)+(SOMME(D4:D18)−D19)÷60
ou bien :
  • pour D19 : MOD(SOMME(D4:D18);60)
  • pour C19 : SOMME(C4:C18)+(SOMME(D4:D18)−D19)÷60
 
  • J’aime
Réactions: Gerapp38