Lier plusieurs fichiers excel

Fermé
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 - 30 août 2010 à 23:49
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 - 13 sept. 2010 à 22:30
Bonjour,

je me trouve face a un probleme qui me parait bien au dela de mes competences mais si quelques puristes peuvent y trouver une reponse.

J'ai un fichier que nos appellerons Base de donnée et 50 autres fichier que nous appellerons Fiche1, Fiche2,....Fiche50. Ils sont tous stockés dans un seul dossier sur le disque dur. Les fichiers Fiche1, Fiche2 etc... sont tous faits sur le meme modele strictement et contiennent une certain nombre d'information. Dans le fichier Base de données, je veux pouvoir taper le nom "Fiche1" dans la cellule A2 et que la macro complete tous les autres champs contenus dans Fiche1 (genre ; Nom, Prenom, Date de naissance, tel, Adresse, etc), puis dans la cellule A3, Fiche22, et ainsi de suite..., le tout sans ouvrir les 50 fiches.

merci de bien vouloir m'aider

10 réponses

Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
31 août 2010 à 01:49
Re le forum

Il y a la fonction INDIRECT.EXT
(Renvoie le contenu d'une cellule ou d'une plage contenue dans un classeur fermé)

Il faut installer la macro complémentaire Morefunc de Laurent Longré

Site de téléchargement : http://xcell05.free.fr

Mytå
3
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
Modifié par Mytå le 31/08/2010 à 01:31
Salut le forum

Lire la valeur d'une cellule dans un classeur fermé

Tiré du site de Frédéric Sigonneau

Cette fonction est utilisable dans une feuille de calcul
Exemple : =GetValueWithADO("D:\TestADO.xls";"feuil1";A1)

Function GetValueWithADO(Classeur$, Feuille$, Cell As Range)   
'Nécessite une référence à la librairie  
'Microsoft ActiveX Data Object 2.x Library  

Dim RcdSet As Object   
Dim strConn As String   
Dim strCmd As String   
Dim dummyBase As Range   
     
  'prépare une "base de données" bidon pour la clause SELECT   
  '(une entête fictive et une ligne de données)   
  Set dummyBase = Cell.Resize(2)   
     
  'prépare les commandes ADO et SQL   
  strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _   
                "Data Source=" & Classeur & ";" & _   
                "Extended Properties=""Excel 8.0;HDR=No;IMEX=1;"";"   
  strCmd = "SELECT * FROM [" & Feuille & "$" & dummyBase.Address(0, 0) & "]"   
     
  'crée l'objet Recordset   
  Set RcdSet = CreateObject("ADODB.Recordset")   
     
  'va chercher l'info   
  RcdSet.Open strCmd, strConn, 0, 1, 1 'adOpenForwardOnly, adLockReadOnly, adCmdText   
     
  'et la renvoie   
  GetValueWithADO = Application.Clean(RcdSet(0))   
  'autre syntaxe possible   
'  GetValueWithADO =Application.Clean(RcdSet.GetString(NumRows:=1))   
     
  'nettoyage   
  Set RcdSet = Nothing   
End Function 'fs

Mytå

Merci de donner suite à votre question, nous ne sommes pas des robots...
Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
2
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 2
31 août 2010 à 20:03
merciii beaucoup

je vais esseyer ca demain car je n'ai pas les fichiers sur moi mtn
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
31 août 2010 à 23:28
Re le forum

Bigfood, tu reviens si des problèmes à mettre la solution en oeuvre.

Mytå
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 2
31 août 2010 à 23:46
Oui biensur et merci encore pour ton intention et ton temps

et Bonne soirée
0
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 2
2 sept. 2010 à 23:19
Excuse moi Myta mais je n'arrive pas à comprendre comment utilsier ton code ... sachant que je qu'un débutant en la matiére .. Merci de bien voiloir m"expliquer en detail la démarche à suivre s'il te plait ..
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
3 sept. 2010 à 03:39
Re le forum

Bigfood, tu parles du code de Frédéric Sigonneau ou de la macro complémentaire de Laurent Longré.

Mytå
0
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 2
3 sept. 2010 à 23:35
les deux..... si tu pourrais m'expliquer profondement s'il te plait
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
Modifié par Mytå le 5/09/2010 à 19:42
Re le forum

Pour la macro complémentaire Morefunc : Installation et déploiement

Pour la macro de Frédéric Sigonneau :
Tu ouvres VBA ALT+F11, Insertion Module et tu y colles le code.

Ensuite, il suffit de les utiliser comme de simple formule.

Mytå
Merci de donner suite à votre question, nous ne sommes pas des robots...
Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
0
bigfood Messages postés 24 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 6 juin 2011 2
13 sept. 2010 à 22:30
désoler du retard mais je ne peux me connecter regulierement ces temps ci a cause des travaux dans ma rue la connection et coupé et je dois aller dans les teleboutique .... bon je vais esseyer ca quand tous sera rentrer dans l'ordre


merci beaucoup
0