Microsoft 365 Cellules référence année et mois

Bob 31

XLDnaute Nouveau
Bonjour à tous

J'ai un tableau (ci joint) qui me permet de récupérer des données (en B6 à I17) depuis un autre tableau excel
Je souhaiterai créer un lien perpétuel chaque années qui reprend les données suivant l'année inscrite en A3 et les mois de A6 à A17
Est il possible de nommer les onglets automatique suivant l'année renseignée en A3.

Etant novice merci pour votre aide.

Cordialement
 

Pièces jointes

  • TABLEAU GASOIL.xls
    43 KB · Affichages: 6

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Bob,
En PJ un essai. Ca marche chez moi mais pas essayé sur un lecteur réseau.
On nomme la feuille et c'est ce nom qui est reporté en A3 par :
VB:
=DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1)))
Ensuite sur la ligne 6 ( masquée ):
En A6 il y a le chemin :
Code:
="'\\SRVBOUBEE\documents partages\CARBURANT\CARBURANT CALCUL\"&A3&"\[CARBURANT PAPAYET "&A3&".xls]"
et en B6:I6 les cellules, du type :
Code:
="'!$B$24"
Puis dans le tableau on réunit le tout avec la fonction INDIRECT, du type
=INDIRECT(Chemin&Mois&Cellule) , par ex en B7 :
Code:
=SIERREUR(INDIRECT($A$6&$A7&B$6);"")
Mais sur lecteur réseau cela risque d'être long, à voir.
 

Pièces jointes

  • TABLEAU GASOIL.xls
    46 KB · Affichages: 11

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
Ca ne m'étonne guère, l'accès aux réseaux généralement ont une syntaxe spécifique.
Peut être une astuce, une ouvrez un fichier du réseau. Dans votre fichier vous faites "=" et sélectionnez une cellule du fichier du réseau. Puis faites entrée, et fermez le fichier réseau.
Normalement vous devriez avoir la syntaxe attendue dans la cellule où vous avez entré la formule.
Si j'accède au disque de ma Freebox, ça donne :
VB:
='\\Freebox_Server\no name\A_Sylvain\[Classeur1.xlsm]Feuil1'!$B$7
Ca ressemble à ce qui est construit.
Il est possible aussi que le réseau interdise les accès distant par raisons de sécurité.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Et par le fichier cela donne ça :
VB:
'\\SRVBOUBEE\documents partages\CARBURANT\CARBURANT CALCUL\2021\[CARBURANT PAPAYET 2021.xls]JANVIER'!$B$24
il semble qu'il manque un espace après Janvier.
essayez en B6 de mettre =" '!$B$24" au lieu de ="'!$B$24"
ou de mettre en B7 :
Code:
=SIERREUR(INDIRECT($A$6&$A7&" "&B$6);"")
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Si on prend l'adresse écrit en dur de votre premier fichier on a :
'\\SRVBOUBEE\documents partages\CARBURANT\CARBURANT CALCUL\2021\[CARBURANT PAPAYET 2021.xls]JANVIER '!$B$24
Avec la modif du post #6, cela donne :
'\\SRVBOUBEE\documents partages\CARBURANT\CARBURANT CALCUL\2021\[CARBURANT PAPAYET 2021.xls]JANVIER '!$B$24
C'est exactement la même chose.
J'ai fait un essai sur un lecteur réseau, j'obtiens aussi #Ref. Il faut que le fichier soit ouvert pour que la valeur soit correcte. Une fois le fichier fermé la valeur reste.
Cependant si vous revalidez la formule elle redevient en erreur.
Petite question, sur votre fichier du post #1, si vous vous mettez dans une cellule avec formule et que vous faites "entrée" la valeur reste correcte ou est en erreur ?
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Un essai en PJ que je n'ai testé que sur un fichier en local.
Pour mon test je n'ai pas trouvé ce fameux espace, j'ai :
VB:
='C:\Users\PC_PAPA\Desktop\[Essai 2025.xlsx]JANVIER'!$B$24
et non pas "JANVIER ", vous aurez donc peut être à modifier la ligne 6 avec ou sans espace. ( dans la PJ il y est )
La mise à jour se fait par appui sur le bouton.
 

Pièces jointes

  • TABLEAU GASOIL (VBA V1).xls
    62.5 KB · Affichages: 3

Discussions similaires

Haut Bas