diaboloben
Messages postés4Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention22 septembre 2007
-
21 sept. 2007 à 02:06
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
22 sept. 2007 à 20:52
Bonjour,
Je précise tout d'abord que je suis novice en la matière: j'ai trouvé un code sur le web pour extraire les données d'une cellule excel de plusieurs fichiers en meme temps. Celui ci fonctionne entrant le chemin d'accès complet du repertoire ou se trouve les fichiers .xls. J'essaye donc de le modifier afin de n'avoir juste à executer la macro depuis le dossier concerné (dans le dossier ou se trouve les fichiers .xls:
Sub chercheFichiersFermesV03()
Dim X As Integer, nbFichiers As Integer, Y As Integer
Dim Tableau() As String
Dim Direction As String
Application.ScreenUpdating = False
Direction = Dir(ThisWorkbook.Path & "\*.xls")
Do While Len(Direction) > 0
nbFichiers = nbFichiers + 1
ReDim Preserve Tableau(1 To nbFichiers)
Tableau(nbFichiers) = Direction
Direction = Dir()
Loop
If nbFichiers > 0 Then
For X = 1 To nbFichiers
If Tableau(X) <> ThisWorkbook.Name Then
Y = Y + 1
With ActiveSheet.Cells(Y, 1)
.Formula = "='\\[" & Tableau(X) & "]Feuil1" & "'!" & "A1"
.Value = .Value
End With
End If
Next X
End If
Application.ScreenUpdating = True
End Sub
J'ai marqué en rouge les points que j'ai modifiés ( ou il y avait simplement le chemin d'accès du dossier contenant les fichiers a extraire). Après avoir tout essayé, je sèche !
Merci bien
tubafat
Messages postés79Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention25 septembre 2007 21 sept. 2007 à 10:33
Salut,
pourrais tu expliquer sur quoi tu sèches???
J'imagine que ce que tu as modifié en rouge ne fonctionne pas, mais as-tu un message d'erreur? Si oui lequel et à quelle ligne se produit-il???
Si tu veux des réponses il faut penser à expliquer clairement ce qui ne va pas...
Tubafat Avant d'imprimer, pensez à l'environnement
diaboloben
Messages postés4Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention22 septembre 2007 21 sept. 2007 à 13:37
Merci de ton aide mais ca ne fonctionne toujours pas !
#REF!, ----
#REF!, ----
#REF!
Toujours cette satanée erreur !
si tu vois une autres solutions...
merci de votre aide !
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 22 sept. 2007 à 12:51
Je ne vois pas la raison du double-slash "//" (?)
Essaie ceci pour voir
With ActiveSheet.Cells(X, 1)
.Formula = "='[" & Tableau(X) & "]Feuil1'!A1"
Si les fichiers distants sont fermés, tu ne pourras probablement pas voir la valeur affichée. Tu devrais voir #VALEUR, si je ne me trompe. Pour pouvoir la voir, il te faudra les ouvrir sans pour autant les afficher (ScreenUpdating = False)
Si tu vois toujours des #REF, il faudra alors vérifier la formule que ton code génère. Il y a probablement une erreur de syntaxe.
diaboloben
Messages postés4Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention22 septembre 2007 22 sept. 2007 à 20:01
C'est vraiment dingue ! ca ne fonctionne toujours pas. Pourtant mon code fonctionne avec les chemins d'accès des dossiers :
Direction = Dir("C:\Documents and Settings\michel\dossier\general\excel\*.xls")
et
With ActiveSheet.Cells(Y, 1)
.Formula = "='C:\Documents and
Settings\michel\dossier\general\excel\[" & Tableau(X) & "]Feuil1" &
"'!" & "A1"