Afficher 1 fichier (et l’ouvrir s’il est pas encore ouvert)

Bonjour Forum !

J’ai des boutons personnalisés pour afficher certains classeurs que j’ouvre quasiment en permanence.

Problème, si l’un d’entre eux n’est pas encore ouvert, au lieu de le voir s’afficher, j’obtiens un message d’erreur.

Un as du VBA saurait-il modifier la macro ci-dessous pour que, si le classeur que je souhaite afficher n’est pas encore ouvert, Excel l’ouvre en lançant la macro ?

Merci !!!

Sub Affichage_Feuille_SUIVI_COURRIERS()
    Windows("COM_SUIVI COURRIERS.xls").Activate
End Sub

PS : le chemin d’accès au fichier est :

S:\_PROJETS\COM\6_SECRETARIAT\5 – SUIVI COURRIERS\ COM_SUIVI COURRIERS.xls

Bonjour

Une idée à tester

Sub Affichage_Feuille_SUIVI_COURRIERS()
Dim I As Integer

  For I = 1 To Workbooks.Count
    If Workbooks(I).Name = "COM_SUIVI COURRIERS.xls" Then
      Windows("COM_SUIVI COURRIERS.xls").Activate
      Exit For
    End If
  Next I
  If I > Workbooks.Count Then
    Workbooks.Open "S:\_PROJETS\COM\6_SECRETARIAT\5 – SUIVI COURRIERS\ COM_SUIVI COURRIERS.xls"
  End If
End Sub

Merci pour ta réponse super rapide !

J'obtiens un message d'erreur :

Erreur d'exécution '1004';

Excel ne peut accéder à '5 – SUIVI COURRIERS'. Le document est peut-être en lecture seule ou crypté.

C'est peut-être dû à la présence d'espaces dans le chemin d'accès ?

Bonjour

Je ne peux pas le dire n'ayant pas le fichier

Je pense plus à l'espace avant le nom du fichier

Workbooks.Open "S:\_PROJETS\COM\6_SECRETARIAT\5 – SUIVI COURRIERS\ COM_SUIVI COURRIERS.xls"

C'est à toi de voir

Après divers tests, j'ai trouvé une erreur sur un caractère dans le chemin d'accès.

Donc ta macro marche !

Merci beaucoup et désolé pour cette erreur.

En fait il y a un bug : quand un fichier est déjà ouvert, la macro renvoie le message d'erreur classique :

'XXXX.xls' est déjà ouvert. Si vous l'ouvrez à nouveau, toutes vos modifications seront perdues.

Voulez-vous rouvrir 'XXXX.xls' ?

Y a-t-il un moyen d'éviter ça ?

Bonjour

Bizarre

En principe je teste si j'ai passé en revue tous les classeurs ouverts : Dans ce cas la variable I est supérieure au nombre de classeurs ouverts et j'ouvre le classeur

Dans la fenêtre exécution demande le nombre de classeur et la valeur de i (quand tu as le message d'erreur)

Au fait le nom que l'on teste dans la boucle est le même que celui qui doit être ouvert ?

Dans la boucle on teste "COM_SUIVI COURRIERS.xls" et on ouvre "COM_SUIVI COURRIERS.xls"

Hum hum...

Au fait le nom que l'on teste dans la boucle est le même que celui qui doit être ouvert ?

...j'avais oublié une correction dans la manip précédente.

Promis : comme gage, je fais 100m à cloche-pied aller-retour. Et la prochaine fois, je relis mon code modifié 15 fois avant d'ameuter le forum, même si souvent, pour moi, le code, c'est du chinois.

Merci pour ton aide.

Rechercher des sujets similaires à "afficher fichier ouvrir pas encore ouvert"