Recherche de données dans fichiers multiples

Le
sbranchu
bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même format=

mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #5328031
Bonjour.
Essaie (non testé) :

Sub DeuxMilleFichiers()
Dim Fich As String, Ligne As Long
Const Chemin = "e:donneesdaniel"
Application.ScreenUpdating = False
Fich = Dir(Chemin & "*.xls")
Do While Fich <> ""
Workbooks.Open Chemin & "" & Fich
Ligne = Ligne + 1
ThisWorkbook.ActiveSheet.Cells(Ligne, 1) = _
Sheets("Feuil1").Range("A1").Value
ActiveWorkbook.Close
Fich = Dir
Loop
Application.ScreenUpdating = True
End Sub

Cordialement.
Daniel

bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même format
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB
JB
Le #5328021
Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
rep = ThisWorkbook.Path
nf = Dir(rep & "*.xls")
[A1].Select
Do While nf <> ""
If nf <> ThisWorkbook.Name Then
temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
ActiveCell.Formula = temp
ActiveCell = ActiveCell.Value
ActiveCell.Offset(1, 0).Select
End If
nf = Dir
Loop
End Sub

JB


On 26 mar, 16:45, wrote:
bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même form at
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB


FdeCourt
Le #5328011
Bonsoir,

Avec cette macro (le nom des feuilles doivent être identiques). :

Sub Lire2000Fichiers()
' Ajouter la référence à Microsoft Scripting RunTime

Static FSO As FileSystemObject
Dim FSODossierSource As Scripting.Folder
Dim FSOFichier As Scripting.File
Dim dossier As String

Dim i As Integer
Dim j As Integer

dossier = "D:DONNEESde-courfrancoisBureauNouveau dossier"

Set FSO = CreateObject("Scripting.FileSystemObject")
Set FSODossierSource = FSO.GetFolder(dossier)

For Each FSOFichier In FSODossierSource.Files
If Right(FSOFichier, 3) = "xls" Then
i = i + 1
temp = Split(FSOFichier.Path, "")

For j = 0 To UBound(temp) - 1
chemin = chemin & temp(j) & ""
Next

Cells(i, 1) = FSOFichier.Name
Cells(i, 2) = ExecuteExcel4Macro("'" & chemin & "[" &
FSOFichier.Name & "]Feuil1'!R1C1") 'modifier le nom de la feuille si
nécessaire et l'adresse de la cellule

chemin = ""

End If
Next
End Sub

On 26 mar, 16:45, wrote:
bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même form at
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB


sbranchu
Le #5327691
Bonjour JB, ça marche super... mais pourquoi ThisWorkbook.Path me
mets systématiquement : "C:Documents and SettingsSylvainApplication
DataMicrosoftExcelXLSTART" et ThisWorkbook.Name "PERSO.XLS" a



On 26 mar, 17:12, JB
Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
      ActiveCell.Formula = temp
      ActiveCell = ActiveCell.Value
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 26 mar, 16:45, wrote:



bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même fo rmat
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée conten ue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



JB
Le #5327661
Bonjour,

ActiveWorkBook.Path donne le répertoire du classeur de la macro.La
macro a sans doute été écrite dans Perso.xls.
ActiveWorkBook.Path donne le repertoire du classeur actif.

JB

On 27 mar, 08:09, wrote:
Bonjour JB, ça marche super... mais pourquoi  ThisWorkbook.Path me
mets systématiquement : "C:Documents and SettingsSylvainApplication
DataMicrosoftExcelXLSTART" et ThisWorkbook.Name "PERSO.XLS" a

On 26 mar, 17:12, JB


Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
      ActiveCell.Formula = temp
      ActiveCell = ActiveCell.Value
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 26 mar, 16:45, wrote:

bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le même format
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée cont enue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -




sbranchu
Le #5326011
Ce qui devait arrivé es arrivé : Des fichiers n'ont rien à faire dans
mon répertoire : Comment vérifier qu'il s'agit d'un fichier concerné,
comment vérifier si la feuille "Tata" est présente par ex ?
Merci de votre aide,
SB


On 27 mar, 08:44, JB
Bonjour,

ActiveWorkBook.Path  donne le répertoire du classeur de la macro.La
macro a sans doute été écrite dans Perso.xls.
ActiveWorkBook.Path donne le repertoire du classeur actif.

JB

On 27 mar, 08:09, wrote:



Bonjour JB, ça marche super... mais pourquoi  ThisWorkbook.Path me
mets systématiquement : "C:Documents and SettingsSylvainApplication
DataMicrosoftExcelXLSTART" et ThisWorkbook.Name "PERSO.XLS" a

On 26 mar, 17:12, JB
Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
      ActiveCell.Formula = temp
      ActiveCell = ActiveCell.Value
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 26 mar, 16:45, wrote:

bonjour à toutes et à tous,
J'ai dans un répertoire environ 2000 fichiers basés sur le mêm e format
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée co ntenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -





JB
Le #5325941
Bonjour,

Sub essai()
rep = ThisWorkbook.Path
nf = Dir(rep & "*.xls")
[A1].Select
Do While nf <> ""
If nf <> ThisWorkbook.Name Then
temp = Application.ExecuteExcel4Macro("'" & rep & "" & "[" & nf
& "]feuil1'!R1C1")
If IsError(temp) Then
ActiveCell = "Erreur:" & nf
Else
ActiveCell.Formula = temp
ActiveCell = ActiveCell.Value
End If
ActiveCell.Offset(1, 0).Select
End If
nf = Dir
Loop
End Sub

JB

On 29 mar, 08:53, wrote:
Ce qui devait arrivé es arrivé : Des fichiers n'ont rien à faire dan s
mon répertoire : Comment vérifier qu'il s'agit d'un fichier concerné ,
comment vérifier si la feuille "Tata" est présente par ex ?
Merci de votre aide,
SB

On 27 mar, 08:44,JB


Bonjour,

ActiveWorkBook.Path  donne le répertoire du classeur de la macro.La
macro a sans doute été écrite dans Perso.xls.
ActiveWorkBook.Path donne le repertoire du classeur actif.

JB

On 27 mar, 08:09, wrote:

BonjourJB, ça marche super... mais pourquoi  ThisWorkbook.Path me
mets systématiquement : "C:Documents and SettingsSylvainApplicati on
DataMicrosoftExcelXLSTART" et ThisWorkbook.Name "PERSO.XLS" a

On 26 mar, 17:12,JB
Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
      ActiveCell.Formula = temp
      ActiveCell = ActiveCell.Value
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 26 mar, 16:45, wrote:

bonjour à toutes et à tous,
J'ai dans un répertoire environ2000fichiers basés sur le mêm e format
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donnée contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -






sbranchu
Le #5325911
Bonjour et merci,
c'est quoi exactement ExecuteExcel4Macro ?
Merci encore,
SB


On 29 mar, 11:00, JB
Bonjour,

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = Application.ExecuteExcel4Macro("'" & rep & "" & "[" & nf
& "]feuil1'!R1C1")
      If IsError(temp) Then
         ActiveCell = "Erreur:" & nf
      Else
         ActiveCell.Formula = temp
         ActiveCell = ActiveCell.Value
      End If
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 29 mar, 08:53, wrote:



Ce qui devait arrivé es arrivé : Des fichiers n'ont rien à faire d ans
mon répertoire : Comment vérifier qu'il s'agit d'un fichier concern é,
comment vérifier si la feuille "Tata" est présente par ex ?
Merci de votre aide,
SB

On 27 mar, 08:44,JB
Bonjour,

ActiveWorkBook.Path  donne le répertoire du classeur de la macro.L a
macro a sans doute été écrite dans Perso.xls.
ActiveWorkBook.Path donne le repertoire du classeur actif.

JB

On 27 mar, 08:09, wrote:

BonjourJB, ça marche super... mais pourquoi  ThisWorkbook.Path m e
mets systématiquement : "C:Documents and SettingsSylvainApplica tion
DataMicrosoftExcelXLSTART" et ThisWorkbook.Name "PERSO.XLS" a

On 26 mar, 17:12,JB
Bonjour,

Tous les fichiers dans le même répertoire:
Résultat dans la colonne A:

Sub essai()
  rep = ThisWorkbook.Path
  nf = Dir(rep & "*.xls")
  [A1].Select
  Do While nf <> ""
    If nf <> ThisWorkbook.Name Then
      temp = "='" & rep & "[" & nf & "]Feuil1'!$A$1"
      ActiveCell.Formula = temp
      ActiveCell = ActiveCell.Value
      ActiveCell.Offset(1, 0).Select
    End If
    nf = Dir
  Loop
End Sub

JB

On 26 mar, 16:45, wrote:

bonjour à toutes et à tous,
J'ai dans un répertoire environ2000fichiers basés sur le m ême format
mais ne portant pas le même nom.
Je voudrais récupérer pour chacun de ces fichiers la donné e contenue
dans la cellule A1 de l'onglet Feuil!1.
C'est possible ?
Merci de votre aide
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le text e des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -







Publicité
Poster une réponse
Anonyme