Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Récupération donnés et ADO

  • Initiateur de la discussion Initiateur de la discussion lio
  • Date de début Date de début

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 !

lio

XLDnaute Occasionnel
Bonjour le forum 🙂

En cherchant dans les archives du forum, j'ai trouvé une macro qui me permet de récupérer un plage de cellules dans un fichier fermé. Ca marchait impec jusqu'au moment où je n'écrit plus en dur mon chemin d'accés !

Voici la macro et en rouge les modifs apportées qui me mettent la pagaille :angry:

'récupération de données dans un classeur fermé
'(méthode 'classique' par établissement d'une liaison temporaire)
'(c'est aussi la technique habituellement conseillée pour essayer
'de récupérer des données d'un classeur endommagé)

Sub Test()

Dim Y As String
Dim Z As String

Y = LstBox1.Column(9, i)
Z = Y & '.xls'


GetValuesFromAClosedWorkbook 'C:\\Documents and Settings\\lio\\Bureau\\Dossier SCE', 'Z', 'Feuil1', 'A1:G50'
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

J'ai l'impression que cette macro n'accepte pas un nom de fichier à partir d'une variable...

PS: pas de pb sur i, mon code est dans une boucle sur la sélection de ma lstbox1.


Merci pour votre aide et des pistes éventuelles.

Edition: mes barres dans mon chemin d'accès ne s'affiche pas... mais bon en réalité elles sont là !

Message édité par: lio, à: 04/06/2006 18:52
 
bonjour Lio

La macro que tu as trouvé n'utilise pas la methode ADO mais crée des formules de liaison dans la feuille , puis remplace les formules par leur valeur

Je n'ai pas testé mais il y a un probleme avec la variable Z :
Remplace 'Z' par Z : enleve les guillemets pour que la lettre soit considérée comme une variable


Sub Test()
Dim Y As String
Dim Z As String
Y = LstBox1.Column(9, i)
Z = Y & '.xls'
GetValuesFromAClosedWorkbook 'C😀ocuments and Settingslionel novionBureauDossier SCEDevis', Z, 'Feuil1', 'A1:G50'
End Sub


bonne soiree
MichelXld
 
rebonsoir Lio

je viens d'essayer la macro de Ron de Bruin et cela fonctionne parfaitement chez moi


Sub Test()
Dim Y As String
Dim Z As String

Y = 'nomClasseur'
Z = Y & '.xls'

GetValuesFromAClosedWorkbook 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\', Z, 'Feuil1', 'A1:G50'
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



bonne soiree
MichelXld

Message édité par: michelxld, à: 04/06/2006 19:16
 
Re,

Merci, je viens de tester sans les doubles barres et à la fin sans barre du tout et il semblerait que ça marche :whistle:

Je vais tester sur mon usine à gaz et je te tiendrais au courant. En tous cas merci beaucoup pour toutes tes contributions sur le forum.

Edit. Arff, les doubles barres ont disparue ...

Message édité par: lio, à: 04/06/2006 19:32
 
rebonsoir lio

merci pour ton message


je n'ai pas bien compris ton probleme de double barre mais le principal est que ça fonctionne ...;o)


j'espere que ce lien répondra à ta demande pour verifier si un fichier existe

Lien supprimé


bonne soiree
MichelXld
 
- 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

Réponses
7
Affichages
2 K
G
Réponses
5
Affichages
1 K
Evrar Kunde
E
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…