Problème d'ouverture de fichiers lors de consolidation par VBA

olicar

XLDnaute Nouveau
Bonjour le forum,

J'ai découvert ce forum il y a quelques temps et celui-ci m'a déjà bien aidé et je profite de ce message pour vous en remercier.

Aujourd'hui je rencontre un problème pour lequel je n'ai pas trouvé de réponse.

J'ai le code suivant qui consiste à consolider des données provenant de plusieurs fichiers.

Sub consolide()
ChDir Range("i1").Value
Range("e3:g1000").ClearContents
Range("e3").Select
Selection.Consolidate Sources:=Array("'[" & Range("e1").Value & "*.xls]RFM_Input'!a8:d93"), _
Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False
End Sub


Pour résumer, la macro est sensée consolider les fichiers se trouvant dans le répertoire indiqué en "i1" et consolide les données (de A8 à D93) des fichiers commencant par la valeur se trouvant en "e1".

Lorsque je lance la macro, je reçois un message d'erreur pour chaque fichier me disant qu'il ne peut pas être ouvert.

Est-ce que l'un d'entre-vous aurait une idée car moi, je sèche...

Merci d'avance.
 

tototiti2008

XLDnaute Barbatruc
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Bonjour olicar,

Bienvenue sur XLD,

Pas facile sans fichier sous la main...

un essai

Code:
Sub consolide()
Dim Fic as string, Tablo
   Redim Tablo(0 to 0)
   Range("e3:g1000").ClearContents
   Range("e3").Select
Fic = Dir(Range("i1").Value & "\" & Range("e1").Value & "*.xls")
Do until Fic= ""
Tablo(ubound(tablo)) = "'[" & Range("i1").Value & "\" & Fic & "]RFM_Input'!a8:d93"
Fic = Dir
Redim preserve Tablo(0 to ubound(tablo)+1)
Loop
if ubound(tablo)>0 then Redim preserve Tablo(0 to ubound(tablo)-1)
Selection.Consolidate Sources:=Tablo, _
             Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False
End Sub
Pas testé
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Re,

bon, désolé, ça ne marche pas... outre quelques erreurs dans mon code (corrigées depuis dans le précédent post) , on dirait qu'il n'apprécie pas les adresses de plages de type '[C:\Mon Dossier\Mon Fichier.xls]Ma Feuille'!MaPlage pour les consolidations...
 

olicar

XLDnaute Nouveau
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Bonjour,

En tout cas merci pour la réponse rapide et l'essai. Je n'ai pas annexé de fichiers car étant donné que le problème se situe au niveau de l'ouverture des fichiers externes, joindre mon fichier ne servirait pas à grand chose étant donné que celui-ci se résume à un bête fichier vierge avec une valeur en E1 pour indiquer le début du nom des fichiers que la macro doit ouvrir et une valeur en I1 indiquant le dossier où se trouve ces fichiers.

Mais si ça peut aider:
Cellule E1: 2010-04
Cellule I1: U:\temp\

Sinon, les fichiers que je cherche à ouvrir et se trouvant dans le répertoire "U:\temp\" se nomment "2010-04 Inv.File - RA1.xls", "2010-04 Inv.File - RA2.xls", "2010-04 Inv.File - RA3.xls" et "2010-04 Inv.File - RA4.xls" et ont tous une page intitulée "RFM_Input". Bien entendu, il y a d'autres fichiers dans ce répertoire.

Merci beaucoup pour votre aide.
 

tototiti2008

XLDnaute Barbatruc
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Bonjour olicar,

peut-être

Code:
Sub consolide()
Dim Fic As String, Tablo
    ReDim Tablo(0)
    Range("e3:g1000").ClearContents
    Range("e3").Select
    Fic = Dir(Range("i1").Value & Range("e1").Value & "*.xls")
    Do Until Fic = ""
        Tablo(UBound(Tablo)) = "'" & Range("i1").Value & "[" & Fic & "]RFM_Input'!R8C1:R93C5"
        Fic = Dir
        ReDim Preserve Tablo(UBound(Tablo) + 1)
    Loop
    If UBound(Tablo) > 0 Then ReDim Preserve Tablo(UBound(Tablo) - 1)
    Selection.Consolidate Sources:=Tablo, _
                 Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False
End Sub
 

olicar

XLDnaute Nouveau
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Fabuleux, trop fort !

Un immense MERCI !!!! Ca marche superbement bien ! Je n'ai jamais vu certains codes. Je constate que j'ai encore beaucoup à apprendre.

Merci pour ta disponibilité !
 

tototiti2008

XLDnaute Barbatruc
Re : Problème d'ouverture de fichiers lors de consolidation par VBA

Re,

De rien
Pour info, ce qui ne fonctionnait pas dans le code original :

on dirait qu'il n'apprécie pas les adresses de plages de type '[C:\Mon Dossier\Mon Fichier.xls]Ma Feuille'!MaPlage pour les consolidations

en effet, il faut lui donner l'adresse du fichier comme ça

'C:\Mon Dossier\[Mon Fichier.xls]Ma Feuille'!MaPlage

avec MaPlage en style R1C1
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16