Récupérer valeurs d'un autre classeur

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 !

kikorun

XLDnaute Nouveau
Bonsoir à tous 😛

J'ai une petite question qui je pense ne devrait pas poser de problème à la plupart d'entre vous, désolé pour mon piteux niveau !

Je travaille sur la feuille1 de mon classeur Excel (principal.xls);
J'aimerais, sur cette feuille, créer un bouton et y associer une macro qui, lorsqu'elle serait exécutée, irait récupérer des valeurs contenues sur la première feuille d'un autre classeur (secondaire.xls), pour les afficher à un endroit bien précis de mon document courant.

Par exemple, aller récupérer sur secondaire.xls, la valeur des cellules A1, B2, C5 et D7 pour les copier dans ma feuille (principal.xls) dans les cellules A3, B4, C8 et E9.

Merci d'avance pour votre précieuse aide !!

Kikorun 😱
 
Re : Récupérer valeurs d'un autre classeur

kikorun à dit:
Bonsoir à tous 😛

J'ai une petite question qui je pense ne devrait pas poser de problème à la plupart d'entre vous, désolé pour mon piteux niveau !

Je travaille sur la feuille1 de mon classeur Excel (principal.xls);
J'aimerais, sur cette feuille, créer un bouton et y associer une macro qui, lorsqu'elle serait exécutée, irait récupérer des valeurs contenues sur la première feuille d'un autre classeur (secondaire.xls), pour les afficher à un endroit bien précis de mon document courant.

Par exemple, aller récupérer sur secondaire.xls, la valeur des cellules A1, B2, C5 et D7 pour les copier dans ma feuille (principal.xls) dans les cellules A3, B4, C8 et E9.

Merci d'avance pour votre précieuse aide !!

Kikorun 😱

Bonsoir Kilorun, et à ceux qui passeront par là.

J'ai nettoyer vite fait une petite "Bidouille" que j'utilise.

Tu fouille, tu efface, tu remplace, et peut être que si tu
cherches ton bonheur ...!

Désolé, je n'ai pas trop le temps de tout expliquer.

Surtout veille à ce que dans tes "VBA\Outils\Références" soient cochés:


Microsoft ActiveX Data Objects x.x Library
et:
Microsoft ADO Ext 2.7 for DLL ans Security


Il doit y rester nombreuses lignes qui ne servent à rien, tu verras...

Ci-joint deux fichiers.

Le Moteur "RECUP_1"
et le fichier "PAGE" qui te servira de test.
Tu peux changer le nom des feuilles, et leur nombre à ta guise...

Bonne soirée.

IFFIC
 
Re : Récupérer valeurs d'un autre classeur

Salut et merci bcp pour vos réponses!

Comm disait KOBAYA, le plus simple en effet serait d'utiliser l'assistant, surtout si la manipulation est tjs la même et consiste à aller chercher les valeurs contenues systématiquement dans les mêmes cellules pour les positionner à un endroit bien précis sur la feuille récup.

Mais ça m'intéresserait quand même de positionner un bouton avec la macro qui va bien.

IFFIC, j'ai lancé le fichier, mais quand je clique sur "Rechercher le fichier" j'ai un message d'erreur: "Type défini par l'utilisateur non défini", faisant référence à "BOITE As FileDialog".

N'y a-t-il pas plus simple?

Je suis sur ma feuille principal.xls, je clique sur le bouton macro et 4 valeurs positionnées à un endroit bien précis sur une autre feuille (de nom toujours identique) sont récupérées et insérées dans 4 cellules (toujours identiques) de ma feuille principal.xls ...

Merci pour votre aide !
 
Re : Récupérer valeurs d'un autre classeur

Private Sub CommandButton1_Click()
ActiveSheet.Range("A1") = Sheets("Feuil2").Range("B3")
ActiveSheet.Range("A2") = Sheets("Feuil2").Range("C5")
ActiveSheet.Range("A3") = Sheets("Feuil2").Range("B10")
ActiveSheet.Range("A4") = Sheets("Feuil2").Range("D8")
End Sub

!!! Génial! C'est exactement ce que je recherchais à faire !!!
Par contre, que faut-il modifier pour aller récupérer des valeurs mais qui sont contenues sur la Feui1 du classeur secondaire.xls ??

Merci +++++ et bonne journée.
 
Re : Récupérer valeurs d'un autre classeur

re kikorun
voila

Private Sub CommandButton1_Click()
ActiveSheet.Range("A1") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B3")
ActiveSheet.Range("A2") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("C5")
ActiveSheet.Range("A3") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B10")
ActiveSheet.Range("A4") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("D8")
End Sub

avec

Fichier secondire.xls = le nom du fichier (qui doit etre ouvert)

pour connaitre les noms des fichiers ouverts tels que EXCEL les connait:

sub test()
for n= 1 to Workbooks(n).Count
msgbox(Workbooks(n).Name)
next n
end sub
 
Re : Récupérer valeurs d'un autre classeur

Oupsss! Je m'aperçois qu'il faut absolument que le fichier secondaire.xls soit ouvert afin que les valeurs puissent être récupérées.

Existerait-il un moyen de récupérer ces valeurs sans avoir besoin d'ouvrir le fichier? (je sens que ça se complique bigrement) 😱)

Merci pour votre réponse 🙂
 
Re : Récupérer valeurs d'un autre classeur

Bonjour,
Il est tout à fait possible de lire les infos classeur fermé, essaie ceci, fichier joint...

Je l'utilise pour remplir une base de données techniques, le fichier source étant sur le réseau, base de données fermée ou ouverte.
Attention, si la base de données est ouverte, ce fichier source doit-être en "partage".

@+
Roger.
 
Dernière édition:
Re : Récupérer valeurs d'un autre classeur

rebonjour à tous
une petite question
serait-il possible d'automatiser la macro à chaque fois les cellules à recuperer changent de valeurs dans la feuille destination changent aussi ???

Merci par avance

Foufoudora

Ps: excuses moi pierrejean je t'ai appelé tout à l'heure jean marie
mille excuses et en plus ca fonctionne.

code :
Private Sub CommandButton1_Click()
ActiveSheet.Range("A1") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B3")
ActiveSheet.Range("A2") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("C5")
ActiveSheet.Range("A3") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B10")
ActiveSheet.Range("A4") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("D8")
End Sub
 
Re : Récupérer valeurs d'un autre classeur

Foufoudora à dit:
rebonjour à tous
une petite question
serait-il possible d'automatiser la macro à chaque fois les cellules à recuperer changent de valeurs dans la feuille destination changent aussi ???

Merci par avance

Foufoudora

Ps: excuses moi pierrejean je t'ai appelé tout à l'heure jean marie
mille excuses et en plus ca fonctionne.

code :
Private Sub CommandButton1_Click()
ActiveSheet.Range("A1") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B3")
ActiveSheet.Range("A2") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("C5")
ActiveSheet.Range("A3") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("B10")
ActiveSheet.Range("A4") = Workbooks("Fichier secondaire.xls").Sheets("Feuil1").Range("D8")
End Sub
RE,
Comment veux-tu savoir si les valeurs source ont changé si tu ne les importent pas ???

@+
Roger.
 
- 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

Discussions similaires

Retour