Supprimer message erreur cliquer sur non automatiquement

Bonjour à tous,

j'ai ce message d'erreur "est déjà ouvert. Si vous l'ouvrez à nouveau, toutes vos modifications seront perdues. Voulez-vous rouvrir" qui apparait parfois. J'aimerai créer une macro permettant de supprimer ce message d'erreur en sauvegardant le fichier et en cliquant sur non automatiquement car à chaque fois les données sont perdus les opérateurs ne lise pas le message. Est ce quelqu'un aurait une idée s'il vous plait ?

Personne n'a de solutions pour m'aider, s'il vous plait ?

Bonsoir Elise,

"message d'erreur" qui vient d'où ?... "Ouvrir à nouveau" à la suite de quoi, une macro ? Pas de fichier "test" ? Tu demandes de l'aide mais as-tu lu les recommandations pour l'utilisation du forum ? . Tu demandes qu'on te promène dans Paris sans "GPS" mais nous sommes plutôt dans le "fog" de Londres...

Bonjour,

exemple te retournant les principaux états d'un fichier selon l'erreur rencontrée :

Sub Test()
    Dim i As Integer
    i = VerifClasseur("C:\Transfert\Test.xls")
    Select Case i
    Case 0: MsgBox "Classeur fermé."
    Case 53: MsgBox "Fichier introuvable"
    Case 70: MsgBox "Classeur déja ouvert."
    Case Else: MsgBox "Erreur : " & i
    End Select
End Sub

Private Function VerifClasseur(Fichier As String) As Integer
    Dim x As Integer
    On Error Resume Next
    x = FreeFile()
    Open Fichier For Input Lock Read As #x
    Close x
    VerifClasseur = Err.Number
    On Error GoTo 0
End Function

car il peut très bien être ouvert dans une autre appli ou une autre session.

Si ce n'est jamais le cas, parcours la collection Workbooks pour contrôler s'il est dedans.
S'il y est contrôle sa propriété .Saved. Si =False tu peux fermer directement, si =True il a des modifs non enregistrées.
eric

Merci a vous mais cela ne résout pas mon problème je vais essayer de mieux expliquer ma demande.

J'ai ce message ci dessous qui apparait et en général personne ne le lit donc clique sur oui puis toutes mes modifications sont perdus.

image

J'aurai aimé savoir si un code ou autre existe pour que ce message ne s'affiche plus et que mon Excel soit sauvegarder automatiquement même si quelqu'un essaye de l'ouvrir à nouveau.

Merci de votre aide

Bonjour,

si, on a répondu, le pb c'est que tu ne sais pas utiliser les réponses.

Dans ma réponse il y avait 2 cas et tu ne précises pas.
Est-ce que le fichier ne peut être ouvert que par la personne tentant une 2nde ouverture, et jamais ouvert par une autre personne (fichier sur réseau) ?
Est-ce qu'il peut être ouvert par une autre applis qu'excel ?
eric

Je ne sais peut être pas utilisé les réponses mais c'est difficile quand on commence en VBA...

Le fichier ne peut être ouvert que par la personne tentant une 2nde ouverture et il se trouve effectivement sur le réseau mais ne peut pas être ouvert par une autre applis qu'excel
Elise

Bonjour,

J'ai essaye le code que vous m'avez donné mais le message s'affiche encore ou alors je le met au mauvais endroit...

Bonjour,

c'est sans doute lorsque les utilisateurs ouvrent un fichier depuis l'explorateur de fichier, ce qui nécessite un traitement particulier.

A y réfléchir, je suis contre ton idée.
Ce message n'est pas un message d'erreur mais un avertissement normal et logique.
Je ne suis pas partisan d'enregistrer des modif à l'insu de l'utilisateur, ça doit rester un choix volontaire.
Tu ne peux pas savoir s'il s'est aperçu d'une erreur qu'il veut aller corriger, ou si pendant une absence qq'un n'a pas touché son clavier par inadvertance modifiant des données.
La solution est dans la formation des utilisateurs et l'éducation aux bonnes pratiques.
eric

Bonjour à tous, je me permet d'apporter mon avis sur ce sujet.

Le message d'erreur d'Elise ne s'affiche que lorsque l'on essaye d'ouvrir un classeur Excel qui est déjà ouvert sur un même ordinateur.

Si le fichier est sur un réseau et qu'un autre ordinateur tente de l'ouvrir vous aurez un message bloquant qui ne proposera que d'ouvrir en lecture seul, donc aucun risque de perte de données.

Donc je suppose que vous réalisez des modifications du classeur sur un PC commun à plusieurs opérateurs? Si vous sauvegardez et fermez le classeur régulièrement après chaque passage vous ne devriez plus perdre de données.

A+

Bonjour Gabin,

Vous avez complétement compris mon problème. Effectivement en sauvegardant et en le fermant à chaque modification, il n'y aurait aucun soucis mais souvent les opérateurs n'y pensent pas et oublie de le fermer c'est aux changements d'équipe que toutes les données se perdent. D'où mon envie de faire disparaitre ce message afin de ne plus perdre de données.

J'ai déjà vu passer un topic avec le même problème mais je n'arrive pas à le retrouver...

vous devriez trouver une macro VBA qui sauvegarde toutes les heures le classeur par exemple.

Et pour répondre à la méfiance d'eriiic , la macro pourrais créer une backup avant les modifs chaques heures

De nombreux sujets similaires existent vous devriez trouver assez de matière pour commencer quelques chose !

Bon courage

J'ai cherché avant de poster sur le forum effectivement d'autres personnes ont eu le même soucis mais je n'ai jamais trouve de solutions y répondant ...

J'ai créé une macro comme ci dessous

"Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
ThisWorkbook.Save
End Sub"

qui enregistre a chaque modification faite sur l'Excel mais malheureusement même avec ça si le fichier Excel est de nouveau ouvert toutes les modifications depuis son ancienne ouverture sont perdus .

Rechercher des sujets similaires à "supprimer message erreur cliquer automatiquement"