Ouvrir plusieurs fichiers excel

fx62

XLDnaute Junior
Bonjour le forum,

J'ai créé une petite macro permettant d'ouvrir les 3 fichiers de la veille, cela fonctionne parfaitement lorsque les 3 fichiers ont été créés la veille mais si par exemple il n'y a que 2 fichiers créés et non 3 dans ce cas, excel me met une erreur comme quoi il n'a pas trouvé l'un des fichiers ... logique me direz-vous !

Je voudrais donc :
  • Ouvrir les trois fichiers s'il y a trois fichiers
  • Ouvrir les deux s'il n'y en a que deux
  • S'il n'y en a qu'un seul, ouvrir l'unique fichier
  • Et s'il n'y en a pas, alors ne rien faire
Voici le code que j'utlise :
Code:
Sub Ouvrir_doc()
        
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " matin.xls"
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " après-midi.xls"
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " nuit.xls"

End Sub

D'avance merci pour votre aide,

fx62
 
C

Compte Supprimé 979

Guest
Re : Ouvrir plusieurs fichiers excel

Bonjour Fx62,

Solution : On Error Resume Next
Code:
Sub Ouvrir_doc()
' En cas d'erreur on continue sans message
On Error Resume Next
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " matin.xls"
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " après-midi.xls"
Workbooks.Open Filename:= _
"O:\...\...\Enregistrement des rapports\Rapport du " & Format(Now - 1, "yyyy-mm-dd") & " nuit.xls"
' Remettre la gestion d'erreur
On Error Goto 0
End Sub

A+
 

fx62

XLDnaute Junior
Re : Ouvrir plusieurs fichiers excel

Re,

Après recherche, j'ai retrouvé un bout de code qu'Hasco m'avait donné pour imprimer les documents de la veille et ne rien faire en cas d'absence de document.

J'ai donc pris ce code que j'ai adapté à ma situation.
Code:
Sub ChercherDocument(FullName As String)
    Dim wk As Workbook
    Dim bFound As Boolean
    'Parcours la collection des classeurs ouverts
    'pour trouver le classeur correspondant à FullName
    For Each wk In Workbooks
        If wk.FullName = FullName Then
            bFound = True
            Exit For
        End If
    Next
    'S'il n'a pas été trouvé et qu'il existe sur le disque alors l'ouvrir
    If Not bFound And Dir(FullName, vbDirectory) <> "" Then Set wk = Workbooks.Open(FullName)
    
    If Not wk Is Nothing Then

    End If
    
End Sub
Désolé du dérangement,

Bonne journée,

fx62
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 976
dernier inscrit
kaizertv2001@gmailcom