recup donnees depuis fichier fermé situe dans autre rep

Le
gilles
Bonjour a tous
j'utilise cette proc trouvée sur la FAQ
elle fonstionne nickel tant que je recupère des donnees d'un fichier situé
dans lemême repertoire
mais si je tente de récupérer depuis un rep situé juste le niveau au dessus
ça marche pas bien sur
ex: mon fichier( ou est placée cette proc) est dans un S/repertoire de D et
je veux recuperer les donnees de Test ADO
Comment puis je le modifier en ce sens?

Sub test()
GetValuesFromAClosedWorkbook "D:", "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Sub GetValuesFromAClosedWorkbook(fPath As String, _
fName As String, sName, cellRange As String)
'Ron De Bruin, mpep
'le paramètre 'cellRange' doit désigner
'*une* plage de cellules *contigües*
With ActiveSheet.Range(cellRange)
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & cellRange
.Value = .Value
End With
End Sub

merci à ceusses qui vondont bien me consacrer le kek minutes qui vont bien!

--
gilles72
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MonOnc'
Le #3630921
bonjour Gilles,

à vue de nez, tu dois préciser le répertoire dans l'appel de la macro
Sub test()
GetValuesFromAClosedWorkbook "D:ton_repertoire"
End sub

cordialement

Bonjour a tous
j'utilise cette proc trouvée sur la FAQ
elle fonstionne nickel tant que je recupère des donnees d'un fichier
situé
dans lemême repertoire
mais si je tente de récupérer depuis un rep situé juste le niveau au
dessus
ça marche pas bien sur
ex: mon fichier( ou est placée cette proc) est dans un S/repertoire de
D et
je veux recuperer les donnees de Test ADO
Comment puis je le modifier en ce sens?

Sub test()
GetValuesFromAClosedWorkbook "D:", "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Sub GetValuesFromAClosedWorkbook(fPath As String, _
fName As String, sName, cellRange As String)
'Ron De Bruin, mpep
'le paramètre 'cellRange' doit désigner
'*une* plage de cellules *contigües*
With ActiveSheet.Range(cellRange)
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & cellRange
.Value = .Value
End With
End Sub

merci à ceusses qui vondont bien me consacrer le kek minutes qui vont
bien!
Herdet
Le #3630771
Bonsoir Gilles,
Essaie ceci :

Sub test()
For i = Len(ThisWorkbook.Path) To 1 Step -1
If Mid(ThisWorkbook.Path, i, 1) = "" Then Exit For
Next
Chemin = Left(ThisWorkbook.Path, i - 1) ' avec -1 pour enlever le
GetValuesFromAClosedWorkbook Chemin , "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Si cela t'interresse, j'ai mis un classeur assez complet (et peut être
complexe) pour récupérer des infos, plage, feuilles,.. dans un classeur
fermé.
Classseur : rd_lireferme
http://www.excelabo.net/moteurs/recherche.php?pge=1&f_mot=&f_auteurÞzan


Cordiales salutations
Robert

"gilles"
Bonjour a tous
j'utilise cette proc trouvée sur la FAQ
elle fonstionne nickel tant que je recupère des donnees d'un fichier situé
dans lemême repertoire
mais si je tente de récupérer depuis un rep situé juste le niveau au
dessus
ça marche pas bien sur
ex: mon fichier( ou est placée cette proc) est dans un S/repertoire de D
et
je veux recuperer les donnees de Test ADO
Comment puis je le modifier en ce sens?

Sub test()
GetValuesFromAClosedWorkbook "D:", "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Sub GetValuesFromAClosedWorkbook(fPath As String, _
fName As String, sName, cellRange As String)
'Ron De Bruin, mpep
'le paramètre 'cellRange' doit désigner
'*une* plage de cellules *contigües*
With ActiveSheet.Range(cellRange)
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & cellRange
.Value = .Value
End With
End Sub

merci à ceusses qui vondont bien me consacrer le kek minutes qui vont
bien!

--
gilles72


JB
Le #3630631
Bonjour,

-Lit B2:B3 dans le sous-répertoire source
-ActiveWorkbook.Path donne le chemin du classeur actif

Sub LitClasseurFermé()
ChampOuCopier = "C2:C3"
Chemin = ActiveWorkbook.Path & "source"
Fichier = "stock.xls"
onglet = "Janvier"
ChampAlire = "B2:B3"
LitChamp ChampOuCopier, Chemin, Fichier, onglet, ChampAlire
End Sub

Sub LitChamp(ChampOuCopier, Répertoire, Fichier, onglet, ChampAlire)
Range(ChampOuCopier).Formula = "='" & Répertoire & "[" & Fichier &
"]" & onglet & "'!" & ChampAlire
Range(ChampOuCopier).Value = Range(ChampOuCopier).Value
End Sub

Cordialement JB
gilles
Le #3627661
BONJOUR à vous 3
EXCUSEZ DU RETARDpour les remerciements
j'étais absent et je viens de prendre seulemnt vos réponses
merci encore
j'essaie ça
à+
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...



Bonsoir Gilles,
Essaie ceci :

Sub test()
For i = Len(ThisWorkbook.Path) To 1 Step -1
If Mid(ThisWorkbook.Path, i, 1) = "" Then Exit For
Next
Chemin = Left(ThisWorkbook.Path, i - 1) ' avec -1 pour enlever le
GetValuesFromAClosedWorkbook Chemin , "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Si cela t'interresse, j'ai mis un classeur assez complet (et peut être
complexe) pour récupérer des infos, plage, feuilles,.. dans un classeur
fermé.
Classseur : rd_lireferme
http://www.excelabo.net/moteurs/recherche.php?pge=1&f_mot=&f_auteurÞzan


Cordiales salutations
Robert

"gilles"
Bonjour a tous
j'utilise cette proc trouvée sur la FAQ
elle fonstionne nickel tant que je recupère des donnees d'un fichier situé
dans lemême repertoire
mais si je tente de récupérer depuis un rep situé juste le niveau au
dessus
ça marche pas bien sur
ex: mon fichier( ou est placée cette proc) est dans un S/repertoire de D
et
je veux recuperer les donnees de Test ADO
Comment puis je le modifier en ce sens?

Sub test()
GetValuesFromAClosedWorkbook "D:", "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Sub GetValuesFromAClosedWorkbook(fPath As String, _
fName As String, sName, cellRange As String)
'Ron De Bruin, mpep
'le paramètre 'cellRange' doit désigner
'*une* plage de cellules *contigües*
With ActiveSheet.Range(cellRange)
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & cellRange
.Value = .Value
End With
End Sub

merci à ceusses qui vondont bien me consacrer le kek minutes qui vont
bien!

--
gilles72







Publicité
Poster une réponse
Anonyme