Transfert de données provenant de differents onglets
Don diégo
-
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis a la recherche d'une formule me permettant de rapatrier les informations d'une cellule dans un autre classeur, En entrant simplement le nom de l'onglet (Car il y a plusieurs onglets dans le classeur) dans lequel celle ci ce trouve (la cellule).
afin d'être plus clair voici des infos complémentaires :
La cellule recherchée se trouvent toujours à la même place (c'est a dire H249) mais pas toujours dans le même onglet (Exemple : "M13-001", "M13-002", etc...). L'onglet ce trouve dans le classeur "Marseille - Bordereau".
Donc en inscrivant le nom de l'onglet (Exemple: M13-001)dans une cellule du classeur "récapitulatif" j'aimerai retrouvé l'information de la cellule H249 de l'onglet M13-001 du classeur Marseille - Bordereau.
Bien a vous.
Je suis a la recherche d'une formule me permettant de rapatrier les informations d'une cellule dans un autre classeur, En entrant simplement le nom de l'onglet (Car il y a plusieurs onglets dans le classeur) dans lequel celle ci ce trouve (la cellule).
afin d'être plus clair voici des infos complémentaires :
La cellule recherchée se trouvent toujours à la même place (c'est a dire H249) mais pas toujours dans le même onglet (Exemple : "M13-001", "M13-002", etc...). L'onglet ce trouve dans le classeur "Marseille - Bordereau".
Donc en inscrivant le nom de l'onglet (Exemple: M13-001)dans une cellule du classeur "récapitulatif" j'aimerai retrouvé l'information de la cellule H249 de l'onglet M13-001 du classeur Marseille - Bordereau.
Bien a vous.
4 réponses
-
Bonjour
Essaye les formules suivantes
En A3 le nom du classeur
en A6 le nom de la feuille
en A7 la cellule :type $A$6
En cellule de ton choix = =INDIRECT(CONCATENER("'[";A3;".xlsm]";A6;"'!";A7))
pour contrôler l'adresse = =CONCATENER("'[";A3;".xlsm]";A6;"'!";A7)
A vérifier l'extension du fichier
J'ai testé avec un classeur ouvert -
Bonjour
Avec le nom de l'onglet en A1 et le classeur Marseille-Bordereau OUVERT tu peux utiliser la fonction INDIRECT reconstituant la référence voulue :
=INDIRECT("[Marseille-Bordereau.xls]" & A1 &"!$H$249") (modifier l'extension xls si nécéssaire)
Par contre si tu veux lire l'info dans le classeur fermé INDIRECT ne marche pas et il faut dans la formule le chemin du fichier :
exemple :
='D:\EXCEL\[Marseille-Bordereau.xls]M13-001'!$H$249
Cdlmnt
-
Il n'exite pas de formule qui fait ça mais tu peux la crée.
Tu veux que je te donne la soluce ? -
Je vais alors proposer ma solution :)
A mettre dans un module
Public Function IMPORT(Classeur As String, Feuille As String) Application.DisplayAlerts = False Dim Classeur_Name As String Classeur_Name = Right(Classeur, InStr(1, StrReverse(Classeur), "\") - 1) Dim Classeur_Path As String Classeur_Path = Left(Classeur, Len(Classeur) - InStr(1, StrReverse(Classeur), "\") + 1) IMPORT= ExecuteExcel4Macro("'" & Classeur_Path & "[" & Classeur_Name & "]" & Feuille & "'!R249C8") End Function
La formule est :=IMPORT("D:\EXCEL\Marseille-Bordereau.xls","M13-001")
ou si le nom du classeur est en A1 et que A2,A3,A4 contient les différents nom des feuilles :=IMPORT($A$1,A2)
Plus qu'as tiré la formule vers le bas :)
Cela reviens au même que les autres :)
*Pensez mettre vos messages en [Résolu] et cliquer sur le + des conseil qui vous ont été utils"