Pb code événementiel si plusieurs classeurs ouverts

Bonsoir à tous,

je travail sur un fichier qui contient des procédure de type "événementiel", ces codes fonctionnent bien sauf quand j'ai une activité sur un autre classeur alors que le fichier en question est également ouvert, dans ce cas, les événements ne fonctionnent plus. Pour retrouver la fonctionnalité des événements, je suis obliger de fermer excel...et de ré-ouvrir mon classeur. Le fichier est du coup inutilisable...

puisque dépendant des instances ouvertes.

ayant chercher longtemps du coté des macros, j'en viens à me demander si le pb ne viens pas d’ailleurs. option classeur; extension fichier (XLSM)...ce truc me rend dingue

voici un des codes "événement" concerné.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim resultat As String
 Sheets("Gestionnaire XXXX").Unprotect ("mdp")
If Not Intersect(Target, thisWorkbook.Sheets("Gestionnaire XXXX").Range("G6:G905")) Is Nothing Then
       'instructions
resultat = InputBox("Veuillez indiquer dans le champ ci-dessous le nombre XXXXXX", "saisie xxxxxx", "0")
 ActiveCell.Offset(-1, 4).Value = resultat
End If
Dim cell As Range
For Each cell In thisWorkbook.Sheets("Gestionnaire XXXX").Range("G6:G905")
If cell = "" And cell.Offset(0, -1) <> "" And cell.Offset(0, -5) <> 1 And cell.Offset(0, 5) <> "" Then
Dim Rep As Integer
     Rep = msgbox("Le prochain audit procces de l'opérateur " & cell.Offset(0, -3) & " au poste " & cell.Offset(0, -2) & " prévu le " & cell.Offset(0, 5) & " doit être réalisé par un XXXXXX." & Chr(10) & Chr(10) & " - cliquer sur OK pour prévenir par E-mail votre partenaire XXXXX." _
     & Chr(10) & Chr(10) & " - cliquer sur annuler pour sortir de la procédure ", vbOKCancel + vbInformation, "Information")
     If Rep = vbOK Then
         ' ici le traitement si réponse positive
        cell.Offset(0, -5) = 1
         Call Mail_auto
     Else
         ' ici le traitement si réponse négative
        Exit Sub
     End If
     End If
     Next
End Sub

je n'ai trouvé aucune discutions sur un sujet similaire compte tenu du nombre de personnes qui post sur les forums, je trouve ça vraiment étrange, même au niveau des cours sur le sujet des "événement worksheet ou workbook, je ne trouve rien sur les risques de conflits ou sur les précautions à prendre si plusieurs classeurs sont ouverts...

Merci par avance à celles et ceux qui souhaitent m'aider.

++

Bonjour

je travail sur un fichier qui contient des procédure de type "événementiel", ces codes fonctionnent bien sauf quand j'ai une activité sur un autre classeur

Quelques questions sur l'autre classeur

  • comporte également des codes ?
  • Est-ce que certaines feuilles sont nommées avec le même nom ?

Crdlt

bonjour Dan et merci

j'ai essayé avec plusieurs classeur (avec macro ou sans) et j'ai toujours le même résultat...

pour le nom des feuilles, ils sont différents...

aurais tu un conseil ?

une précision, ce sont toutes les procédures événementiel de toutes les feuilles qui ne fonctionnent plus...ce qui m'oriente plus vers un PB classeur plutôt que d'un PB "macro".

autre info qui peut être importante -> je ne suis pas super pro en excel ...donc une erreur de débutant n'est pas à exclure...

cordialement

Re

Pas facile sans voir un fichier.

Le code posté est bien placé dans la feuille Gestionnaire xxxx je suppose ?

Si la cellule active est celle dans la feuille gestionnaire, essaie ne changeant -->

ActiveCell.Offset(-1, 4).Value = resultat

Par

Target.Offset(-1, 4).Value = resultat

crdlt

Merci pour ta proposition de modification, je test et je vous fait un retour.

++

Bonjour,

j'ai essayé ta proposition malheureusement sans résultat (merci quand même )

j'ai tenté de supprimer les données "privées" afin de pouvoir poster le classeur en question...

merci pour ton aide

re

Explique moi en détails ce que tu fais, je vais essayer de reproduire l'erreur

A te relire

désolé,

j'ai voulu joindre mon classeur mais il est apparement trop gros...

il fait 1 mega...et ç'est 300 kilo maxi

j'essaie de le reduire mais je n'y arrive pas

des que j'ai trouvé, je le post

merci

Re...

satané classeur...impossible de réduire sa taille en dessous de 1,08 méga...

j' ai pourtant enlevé toutes les mise en forme + les modules inutiles + check de toute les mise en formes inutile...

mon PC boulo ne me permet pas la compression en .ZIP.. je teste ce soir sur PC perso pour voir le résultat... mais j'ai peu d'espoir....

juste un peu de patience si il te plait...

je suis à 100 % sur le coup mais comme disait l'autre, "quand ça veut pas...."

++

bonsoir Dan,bonsoir le forum,

Concernant la possibilité de poster du fichier, je bloque 750 kilo au niveau du poids du fichier

Concernant les dernières avancés, j'ai fait d'autres test...encore et encore....et j'ai du nouveau...

j'ai essayé comme ça.

If Not Intersect(Target, Me.Range("G6:G905")) Is Nothing Then

Et

For Each cell In Me.Range("G6:G905")

j'ai fait cette modif sur une copie du classeur situé sur le bureau de mon PC.. -> résultat positif

suite à ce résultat encourageant, j'ai testé en condition réel.

j'ai donc modifié le vrai fichier que j'utilise qui est lui sur le réseau de l'entreprise ou je travail., et là....ç'est le drame.... meme problème qu’auparavant.

En gros, si le fichier est en local ça fonctionne...si il est sur réseau, ça plante....

Je vois pas trop le lien puisque le code ne mentionne pas le lieu de stockage du classeur

je m'excuse au passage puisque il est possible que je soit passé à coté lors des test suite à tes propositions de correction

Du coup, je sais pas trop quoi en penser...

une idée ?

merci par avance

++

Re

Je ne pense pas que le ME va résoudre ton problème et le THISWORKBOOK

Si tu n'arrives pas à poster ton fichier parce que trop de poids, utilise cjoint.com

Je le reprendrai pour regarder

A te relire

Crdlt

Rechercher des sujets similaires à "code evenementiel classeurs ouverts"