Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouvrir automatique des fichiers dont le nom changent tout les jour

7 réponses
Avatar
zalliel
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom, dans un
répertoire, toujours le même "c:\toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une valeur du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:\Week27\"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub

7 réponses

Avatar
RGI
Bonjour

est-ce cela que tu recherches?

Sub essai()
Dim temp
Dim FileToOpen() As String
temp = Application _
.GetOpenFilename("Fichiers Excel(*.xls),*.xls", , _
"Choisissez un ou plusieurs fichier (s)", , True)
If VarType(temp) = vbBoolean Then
MsgBox "Vous devez choisir au moins un fichier!", _
vbCritical + vbOKOnly
Exit Sub
Else
For i = LBound(temp) To UBound(temp)
ReDim Preserve FileToOpen(0 To i) As String
FileToOpen(i) = temp(i)
MsgBox "Ouvrir " & FileToOpen(i)
Next i
End If

End Sub


salutations

Gilbert

"zalliel" a écrit dans le message de
news:
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom, dans
un
répertoire, toujours le même "c:toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une valeur
du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut
qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:Week27"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub


Avatar
nospam-Awerel
bonjour
Pour récupérer un chemin par macro, il faut utiliser la porpriété Path :
' enregistre le chemin du fichier ouvert
Dim chemin As String
chemin = ActiveWorkbook.Path
' et pour ouvrir un autre fichier
Workbooks.Open varChemin & "autre fichiers.xls"

à+
Antoine

"zalliel" a écrit dans le message de
news:
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom, dans
un
répertoire, toujours le même "c:toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une valeur
du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut
qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:Week27"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub


Avatar
zalliel
Merci pour ta réponse, mais non ce n'est pas cela que je cherche, il faut que
les fichiers s'ouvre sans intervention "humaine".
C'est pour automatiser des reporting, et il n'est pas question qu'une
personne puisse intervenir sur cet aspect là !
Encore merci !
Phil


Bonjour

est-ce cela que tu recherches?

Sub essai()
Dim temp
Dim FileToOpen() As String
temp = Application _
.GetOpenFilename("Fichiers Excel(*.xls),*.xls", , _
"Choisissez un ou plusieurs fichier (s)", , True)
If VarType(temp) = vbBoolean Then
MsgBox "Vous devez choisir au moins un fichier!", _
vbCritical + vbOKOnly
Exit Sub
Else
For i = LBound(temp) To UBound(temp)
ReDim Preserve FileToOpen(0 To i) As String
FileToOpen(i) = temp(i)
MsgBox "Ouvrir " & FileToOpen(i)
Next i
End If

End Sub


salutations

Gilbert

"zalliel" a écrit dans le message de
news:
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom, dans
un
répertoire, toujours le même "c:toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une valeur
du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut
qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:Week27"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub







Avatar
RGI
tu veux ouvrir un fichier xls que tu ne connais pas dans un répertoire
"xxxxx"

qui connais le nom de ce fichier ?

a-t-il une particularité ?

salutations

Gilbert

"zalliel" a écrit dans le message de
news:
Merci pour ta réponse, mais non ce n'est pas cela que je cherche, il faut
que
les fichiers s'ouvre sans intervention "humaine".
C'est pour automatiser des reporting, et il n'est pas question qu'une
personne puisse intervenir sur cet aspect là !
Encore merci !
Phil


Bonjour

est-ce cela que tu recherches?

Sub essai()
Dim temp
Dim FileToOpen() As String
temp = Application _
.GetOpenFilename("Fichiers Excel(*.xls),*.xls", , _
"Choisissez un ou plusieurs fichier (s)", , True)
If VarType(temp) = vbBoolean Then
MsgBox "Vous devez choisir au moins un fichier!", _
vbCritical + vbOKOnly
Exit Sub
Else
For i = LBound(temp) To UBound(temp)
ReDim Preserve FileToOpen(0 To i) As String
FileToOpen(i) = temp(i)
MsgBox "Ouvrir " & FileToOpen(i)
Next i
End If

End Sub


salutations

Gilbert

"zalliel" a écrit dans le message de
news:
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom,
dans
un
répertoire, toujours le même "c:toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une
valeur
du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut
qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:Week27"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub









Avatar
zalliel
Merci, mais le fichier il n'est pas ouvert, et je connais le répertoire où se
trouve les fichiers, juste que je connais pas le nom de ces fichiers, ha
l'informatique grosse malheur.
Phil


bonjour
Pour récupérer un chemin par macro, il faut utiliser la porpriété Path :
' enregistre le chemin du fichier ouvert
Dim chemin As String
chemin = ActiveWorkbook.Path
' et pour ouvrir un autre fichier
Workbooks.Open varChemin & "autre fichiers.xls"

à+
Antoine

"zalliel" a écrit dans le message de
news:
Bonjour,

Je voudrais pouvoir ouvrir des fichiers excel dont j'ignore le nom, dans
un
répertoire, toujours le même "c:toto" par exemple.

J'ai essayer cela mais pas de résultat, la variable reste avec une valeur
du
type "titi.xls" mais n'est pas capable de l'ouvrir, je pense qu'il faut
qu'il
récupère tout le chemin, mais je ne sais pas comment faire.
Merci pour vos réponses
Phil

Sub zallielVeutOuvrirDesFichiers()
Dim rep, i, NomFich()
rep = "C:Week27"

With Excel.Application.FileSearch
.NewSearch
.LookIn = rep
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count

WorksBooks.Open Filename:=.FoundFiles(i)
Workbooks.Open .FoundFiles(i)
Open Filename For Random As .FoundFiles(i)
Next i
End If

End With

Workbooks.Add
End Sub







Avatar
anonymousA
bonjour,

si tu veux n'ouvrir que des fichiers .xls.

Directory1 = "C:toto"
On Error Resume Next
With Application.FileSearch
.NewSearch
.LookIn = Directory1
.Filename = "*.xls"
.SearchSubFolders = true
If .Execute() > 0 then
For i = 1 To .FoundFiles.Count
Workbooks.Open (.FoundFiles(i))
Next
end if
End With
A+
Avatar
zalliel
Super, cela fonctionne nickel.

Bravo et merci !
Phil


bonjour,

si tu veux n'ouvrir que des fichiers .xls.

Directory1 = "C:toto"
On Error Resume Next
With Application.FileSearch
.NewSearch
.LookIn = Directory1
.Filename = "*.xls"
.SearchSubFolders = true
If .Execute() > 0 then
For i = 1 To .FoundFiles.Count
Workbooks.Open (.FoundFiles(i))
Next
end if
End With
A+