récupération de la valeur d'une cellule sur une autre feuille

direct83

XLDnaute Junior
Bonjour,

Cela fait quelque temps que je suis venu sur ce forum. J'ai besoin d'un secours en VBA ou excel afin de récupérer la valeur d'une cellule sur une cellule d'une autre feuille.
je m'explique :
soit la feuille 2005 sur laquelle en cellule B200 j'ai avec une formule inscrit le nom de l'onglet (2005), c'est la feuille active,
avec une macro, je bascule sur la feuille "EditionV2" sur laquelle en cellule A1 je voudrais ce nom "2005", ou si je change de feuille active "2006", je voudrais qu'en cellule A1 de cette feuille "EditionV2" il s'inscrive le nom "2006" et ainsi de suite.
Merci de vos conseils éclairés
 

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

Voici, je joins le fichier en question
Ne pas tenir compte de la feuille "liste" je suis en train de la découper en feuille de millésime de 2005 à 2012 et jusqu'en 2020 avec sur chaque feuille une matrice nommée. Ce sera un problème dans la mesure où les formules de la feuille "EditionV2" se réfère à l'index que j'inscrit sur la feuille en cellule D2, mais je poserais la question après avoir résolu le problème immédiat.
Donc, sur les feuilles 2005 et 2006 pour l'instant, j'inscrit par une formuel en cellule B200 le nom de la feuille. Je voudrais récupérer cette cellule, (je viens de travailler sur cette feuille et je bascule sur la feuille edition V2) en cellule B1, donc 2005. Si je travaille sur la feuille 2006 puis bascule sur la feuille EditionV2 je souhaite qu'en cellule B1, il soit inscrit 2006 et ainsi de suite.
Puis par un code VBA, je voudrais extraire de la matrice 2005,2006, etc.. en fonction du numéro de la première colonne de chaque feuille les données et les inscrire dans le formulaire EditionV2.
Un peu obscur mais j'espère que cela suffit comme explications
Merci de vos conseils éclairés.
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : récupération de la valeur d'une cellule sur une autre feuille

Re,

J'espère que les noms du fichier fourni sont tous fictifs (j'ai comme un doute), pas de données confidentielles sur le forum
Si confidentielles, supprime ton fichier de ton dernier message

Peut-être, dans un module

Code:
Public DernFeuil As String

Function DernFeuille() As String
    DernFeuille = DernFeuil
End Function

Dans thisworkbook

Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name <> "EditionV2" Then
        DernFeuil = Sh.Name
    Else
        Sh.Calculate
    End If
End Sub

et en B1 de la feuille EditionV2

Code:
=dernfeuille()
 

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

Merci je vais essayer la solution mais comment puis-je supprimer le fichier suivant ton conseil ? Merci j'ai trouvé donc je vais essayer ta solution et te tiens au courant
Cordialement
 

tototiti2008

XLDnaute Barbatruc
Re : récupération de la valeur d'une cellule sur une autre feuille

Re,

normalement ça devrait marcher sans ça, tu as bien fait tout ce que j'ai indiqué ?

Edit : Bizarre, ça avait marché pourtant, essaye peut-être de modifier la fonction comme ça :

Code:
Function DernFeuille() As String
    Application.Volatile
    DernFeuille = DernFeuil
End Function

Je joins un fichier exemple épuré pour que d'autres puissent suivre la discussion si intéressés
 

Pièces jointes

  • Classeur1.xls
    23 KB · Affichages: 54
  • Classeur1.xls
    23 KB · Affichages: 57
  • Classeur1.xls
    23 KB · Affichages: 55
Dernière édition:

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

Oui, j'ai tout fait comme tu l'a dit (pas à pas) Quand je suis sur la feuille 2005 puis bascule sur la feuille EditionV2, la cellule B1 ne se met à jour (2005) que si je clique dans la barre de formule puis entrée
A+
 

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

Autant pour moi, mauvais module. Ca marche maintenant et merci pour ce coup de main bienvenu. Autre question comment puis-je à partir de ce millésime en B1 qui détermine la feuille de données remplir le formulaire EditionV2 sans utiliser la matrice "liste" puisqu'elle n'existe plus et remplacée par List2005, List2006, etc.... Je ne peux pas utiliser plus de 7 conditions ?
merci
 

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

Bonjour,

merci pour l'aide mais la solution indirect ne fonctionne que pour la première colonne
En fait je voudrais extraire les données à partir de la feuille 2005 ou 2006 ou etc. et les mettre dans Edition V2 pour remplir le formulaire qui comporte des rechercheV. Tout ceci doit se faire une fois que je suis sur la feuille EditionV2 et que rentre un numéro en D2 (de 1 à ....... suivant le choix que je fait pour l'impression)
Merci de votre compréhension
 

tototiti2008

XLDnaute Barbatruc
Re : récupération de la valeur d'une cellule sur une autre feuille

Bonjour direct83,

Merci de votre compréhension

Justement c'est ce qui pêche un peu, j'ai pas bien compris

rien ne t'empêche de faire une recherchev sur une plage définie par la fonction INDIRECT, mais je ne sais pas bien si c'est ça que tu cherches (je n'ai plus ton fichier et il n'est plus sur le fil, mais de mémoire un Recherchev(D2;INDIRECT(...);2;faux) devrait le faire
 

direct83

XLDnaute Junior
Re : récupération de la valeur d'une cellule sur une autre feuille

J'ai essayé, cela ne fonctionne pas
Je joins le fichier en question ou on peut voir que sur la feuille EditionV2, je rentre en D2 un chiffre qui correspond à l'enregistrement de la feuille dont le nom de l'onglet figure en B2 dont tu as fait l'adaptation.
Je souhaite donc que les enregistrement de la feuille concernée (2005 ou 2006) figurent sur le formulaire d'EditionV2 d'après le numéro que je rentre.
Merci de l'aide précieuse
 

Pièces jointes

  • Copie de Sortie_de_territoire.xls
    204 KB · Affichages: 42
  • Copie de Sortie_de_territoire.xls
    204 KB · Affichages: 44
  • Copie de Sortie_de_territoire.xls
    204 KB · Affichages: 46

tototiti2008

XLDnaute Barbatruc
Re : récupération de la valeur d'une cellule sur une autre feuille

Re,

En admettant que tu as fait tout ce qu'on a dit avant dans ce fil (ce n'est pas dans ton fichier) si 2005 ou 2006 en B1, en cellule C5 de EditionV2 tu peux essayer

Code:
=SI(ESTVIDE($D$2);" ";RECHERCHEV($D$2;INDIRECT("List"&$B$1);2;0))
 

Discussions similaires

Statistiques des forums

Discussions
312 355
Messages
2 087 552
Membres
103 588
dernier inscrit
Tom59300Tom