Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

"N'importe quel"

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

T

tapesec

Guest
Bonjour,

J'ai un dossier contenant un classeur A avec une feuille contenant un tableau A de donnée.
Dans le dossier je sauvegarde aussi en utilisant toujours les mêmes nom de fichiers (B C D) d'autres classeurs contenant des tableaux aussi chaque jour j'ecrase par de nouveaux tableaux ayant la meme structure les anciens.
Dans le tableau de mon classeur A j'ai mis des formules dans mes cellules pour afficher la valeur des cellules de mes autres tableaux B C D.
Le problème, c'est que dans ces tableaux B C D le nom des onglets changent (lundi mardi mercredi ou janvier fevrier mars ou 01 02 03 04 etc ...) du coup je me mange une erreur #REF!.
Voici un exemple de formule dans une de mes cellules :
=SOMME('N:\UOC\nePasToucher\[94.xls]06'!$B$13;'N:\UOC\nePasToucher\[94.xls]06'!$D$13)

Moi je voudrai que dans ma formule pour la condition "onglet nommé 06" je puisse écrire un truc du genre n'importe quel onglet
En gros, pour etre plus clair, faire en sorte que le nom de l'onglet dans lequel se trouve le tableau ou je veux recup des données n'est pas d'importance.

Ou alors si il faut que je m'y prenne carrément autrement me donner une petite piste 🙂

Merci d'avance
 
Re : "N'importe quel"

Bonjour,

si ta somme est dans dans longlet ou sont tes valeurs
met somme($B$13:$D$13)

sinon regarde du côte de indirect()

Bonjour Pierrot non c'est moi qui doit être à côté
 
Dernière édition:
Re : "N'importe quel"

Bonjour,

2 solutions, soit le nom de l'onglet peut être déterminer de facon logique (date par rapport à celle du jour dans un format connu), soit il faut boucler sur toutes les feuilles du classeur pour déterminer la bonne en testant une cellule....

bon après midi
@+

Edition : bonjour tdenfert, aarf suis peut être à coté de la plaque moi...
 
Dernière édition:
Re : "N'importe quel"


Merci pour ta réponse
Comme il faut boucler et que je n'y connais rien j'ai pensé à une autre solution :

Comme j'y connais rien au boucle, pourriez vous me donner le code VBA qui permet de modifier le nom d'onglet courant d'un classeur sélectionné :

Par exemple si j'ouvre un classeur il y a par défaut un onglet "mercredi" déjà sélectionné et si je modifie son nom le code donne
Sheets("Mercredi").Select
Sheets("Mercredi").Name = "essai"

Moi je voudrais remplacer Sheets("Mercredi").Select par un truc genre Sheets("curent").Select quelque chose qui modifie l'onglet par défaut sélectionné quand tu ouvres le classeur .
Ainsi j'aurai plus qu'a creer une macro qui ouvre le classeur qui m'interesse et qui renome l'onglet par défaut sélectionné par un nom que j'aurai choisi pour ainsi pouvoir coder mes formules une fois pour toutes.

je suis pas tres clair je sais :s

EDIT : en gros une instructions VBA qui dit :

ouvrir le classeur nommé "nomDuClasseur"
renommé l'onglet selectionné par défaut par "nomDeLonglet"
sauvegarder le classeur
fermer le classeur

Voilà si je connais ce code je l'adapterai pour tous mes classeurs et apres mes formules dans mon tableau principal marcheront toutes 🙂

Merci d'avance si vous savez ou même si vous m'avez lu
 
Dernière modification par un modérateur:
Re : "N'importe quel"

C'est exactement ca cette ligne marche tres bien et j'ai donc réussi a creer une macro sur un bouton qui ouvre mon classeur et modifie comme je le veux l'onglet actif par défaut.
Je récapitule mon systeme :

J'ai un classeur avec un tableau qui doit centraliser l'ensemble des données venu de plein d'autres tableau dans des classeurs différents.
Quand je reçois par mail mes nouveaux tableaux chaque jour, je l'ai renomme d'une certaine façon qui correspond au formule dans mon tableau principal et je les sauvegarde par dessus les tableaux des jours précédents.
Ensuite j'ouvre mon tableau principal et là le problème c'est que comme mes formules ne trouvent plus les noms d'onglet correspondant dans mes nouveaux tableau, mes cellules souleve des erreurs #!REF.
j'appuie ensuite sur mon bouton avec ma macro qui modifie le nom des onglets de mes tableaux à inserer dans le grand tableau mais là, au lieu que disparaisse l'erreur #!REF, elle reste et les formules ne reviennent pas à leurs valeurs initial.

Exemple de formule initiale :
=SOMME('N:\UOC\nePasToucher\[scp.xls]Avril'!$R$30;'N:\UOC\nePasToucher\[scp.xls]Avril'!$S$30;'N:\UOC\nePasToucher\[scp.xls]Avril'!$T$30;'N:\UOC\nePasToucher\[scp.xls]Avril'!$U$30;'N:\UOC\nePasToucher\[scp.xls]Avril'!$V$30)
Formule après avoir soulevé le problème de nom d'onglet différent
=SOMME('N:\UOC\nePasToucher\[scp.xls]#!REFl'!$R$30;'N:\UOC\nePasToucher\[scp.xls]#!REF'!$S$30;'N:\UOC\nePasToucher\[scp.xls]#!REF'!$T$30;'N:\UOC\nePasToucher\[scp.xls]#!REF'!$U$30;'N:\UOC\nePasToucher\[scp.xls]#!REF'!$V$30)
Je modifie le nom de mon onglet en Avril pour que ca colle avec la formule initiale, mais la formule reste comme ci dessus, je suis obligé de remettre à la main la formule initiale.

Comment je peux faire en sorte que ma forule quand elle trouve une erreur ne se modifie pas et ne remplace pas le nom de mon onglet par des #!REF ?

Merci d'avance
 
Re : "N'importe quel"

Re,

regarde peut être dans l'aide vba du coté de la fonction "IsError".... sinon place peut être en pièce jointe un tout petit fichier permettant de reproduire le problème posé.....
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
829
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…