Transfert de données provenant de differents onglets

Don diégo -  
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.
A voir également:

4 réponses

Iama Messages postés 319 Date d'inscription   Statut Membre Dernière intervention   14
 
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
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
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
0
skk201 Messages postés 942 Date d'inscription   Statut Membre Dernière intervention   54
 
Il n'exite pas de formule qui fait ça mais tu peux la crée.

Tu veux que je te donne la soluce ?
0
skk201 Messages postés 942 Date d'inscription   Statut Membre Dernière intervention   54
 
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"
0