VBA classeur qui interfère avec les autres
Résolu/Fermé
Sansandrine
Messages postés
87
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
14 décembre 2015
-
Modifié par Sansandrine le 1/06/2010 à 09:23
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 - 7 juin 2010 à 10:43
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 - 7 juin 2010 à 10:43
A voir également:
- VBA classeur qui interfère avec les autres
- Find vba - Astuces et Solutions
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Mkdir vba ✓ - Forum VB / VBA
- Classeur numérique gratuit - Télécharger - Bureautique
5 réponses
Sansandrine
Messages postés
87
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
14 décembre 2015
4 juin 2010 à 22:33
4 juin 2010 à 22:33
toujours personne ?
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
4 juin 2010 à 22:56
4 juin 2010 à 22:56
bonjour
Ton message n'est pas suffisamment précis pour que l'on te donne une réponse adéquate.
C'est sans doute ta macro qui n'est pas correctement codée mais sans la voir, ce n'est pas possible de deviner ce qui ne fonctionne pas : les possibilités d'erreur sont infinies !
Si tu pouvais nous mettre un exemple de classeur, sans données identifiables et privées, mais avec la structure de tes données et les macros sur http://www.cijoint.fr/ puis nous mettre le lien généré ici ce serait plus facile.
Ton message n'est pas suffisamment précis pour que l'on te donne une réponse adéquate.
C'est sans doute ta macro qui n'est pas correctement codée mais sans la voir, ce n'est pas possible de deviner ce qui ne fonctionne pas : les possibilités d'erreur sont infinies !
Si tu pouvais nous mettre un exemple de classeur, sans données identifiables et privées, mais avec la structure de tes données et les macros sur http://www.cijoint.fr/ puis nous mettre le lien généré ici ce serait plus facile.
Sansandrine
Messages postés
87
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
14 décembre 2015
4 juin 2010 à 23:27
4 juin 2010 à 23:27
Mais le lien est dans mon message :
http://www.cijoint.fr/cjlink.php?file=cj201006/cij3nDGLTY.xls
http://www.cijoint.fr/cjlink.php?file=cj201006/cij3nDGLTY.xls
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
4 juin 2010 à 23:34
4 juin 2010 à 23:34
Bonjour,
Je viens de voir le poste et il s'agit d'une procédure que j'ai écrite:
C'est bizare je vais regarder.
Pour gbinforme, le classeur concerner se trouve sous : http://www.cijoint.fr/cjlink.php?file=cj201006/cij3nDGLTY.xls
Je viens de voir le poste et il s'agit d'une procédure que j'ai écrite:
Private Sub Worksheet_Calculate() Sheets("MEN_EXT").Activate If ValVerif = "" Then Verification End If End SubEffectivement, si le classeur est ouvert et que l'on ouvre un autre, la procédure se elle se déclenche et provoque une erreur.
C'est bizare je vais regarder.
Pour gbinforme, le classeur concerner se trouve sous : http://www.cijoint.fr/cjlink.php?file=cj201006/cij3nDGLTY.xls
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
Modifié par Le Pingou le 4/06/2010 à 23:58
Modifié par Le Pingou le 4/06/2010 à 23:58
Bonjour Sansandrine,
Remplacer la procédure éxistante par celle-ci:
Note: contrôle que le nom du classeur est bien correct:
"MEN EXT avec calcul de surfaces.xls"
Salutations.
Le Pingou
Remplacer la procédure éxistante par celle-ci:
Private Sub Worksheet_Calculate() If Not ActiveWorkbook.Name = "MEN EXT avec calcul de surfaces.xls" Then Exit Sub Sheets("MEN_EXT").Activate If ValVerif = "" Then Verification End If End Sub
Note: contrôle que le nom du classeur est bien correct:
"MEN EXT avec calcul de surfaces.xls"
Salutations.
Le Pingou
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
5 juin 2010 à 10:18
5 juin 2010 à 10:18
Bonjour Le Pingou,
Effectivement je n'avais pas le classeur lors de mon message et je n'avais pas pensé à "calculate".
Cette fonction peut s'avérer utile mais elle a le gros inconvénient d'être sans arrêt déclenchée, à chaque modification de classeur concerné ou non. Elle est en activité aussi, bien sûr, à la moindre modification de feuille par macro, ce qui fait qu'il faut vraiment quelle soit très légère, parfaitement délimitée et utilisée avec parcimonie.
Effectivement je n'avais pas le classeur lors de mon message et je n'avais pas pensé à "calculate".
Cette fonction peut s'avérer utile mais elle a le gros inconvénient d'être sans arrêt déclenchée, à chaque modification de classeur concerné ou non. Elle est en activité aussi, bien sûr, à la moindre modification de feuille par macro, ce qui fait qu'il faut vraiment quelle soit très légère, parfaitement délimitée et utilisée avec parcimonie.
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
5 juin 2010 à 11:37
5 juin 2010 à 11:37
Bonjour gbinforme,
Merci infiniment de se précieux renseignement.
J'ai insérer dans mon code un contrôle sur le nom du classeur activé et sa marche.
Bon week-end.
Salutations.
Le Pingou
Merci infiniment de se précieux renseignement.
J'ai insérer dans mon code un contrôle sur le nom du classeur activé et sa marche.
Bon week-end.
Salutations.
Le Pingou
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
6 juin 2010 à 23:04
6 juin 2010 à 23:04
Bonjour Sansandrine,
Est-ce que c'est bon maintenant avec cette correction : https://forums.commentcamarche.net/forum/affich-17916795-vba-classeur-qui-interfere-avec-les-autres#8
Est-ce que c'est bon maintenant avec cette correction : https://forums.commentcamarche.net/forum/affich-17916795-vba-classeur-qui-interfere-avec-les-autres#8
Sansandrine
Messages postés
87
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
14 décembre 2015
7 juin 2010 à 08:58
7 juin 2010 à 08:58
Oui ça marche bien, MERCI ! Je pourrais ainsi travailler avec plusieurs classeurs en même temps.
Par contre est ce qu'il y a quelque chose à rajouter pour que ça n'interfère plus avec les autres feuilles du classeur si je veux en rajouter ?
Par contre est ce qu'il y a quelque chose à rajouter pour que ça n'interfère plus avec les autres feuilles du classeur si je veux en rajouter ?
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
7 juin 2010 à 09:54
7 juin 2010 à 09:54
Bonjour,
Remplacer la procédure éxistante par celle-ci:
Private Sub Worksheet_Calculate()
If Not ActiveWorkbook.Name = "MEN EXT avec calcul de surfaces.xls" Then Exit Sub
If Not ActiveSheet.Name = "MEN_EXT" Then Exit Sub
Sheets("MEN_EXT").Activate
If ValVerif = "" Then
Verification
End If
End Sub
Excusez-moi pour le désagrément causé.
Salutations.
Le Pingou
Remplacer la procédure éxistante par celle-ci:
Private Sub Worksheet_Calculate()
If Not ActiveWorkbook.Name = "MEN EXT avec calcul de surfaces.xls" Then Exit Sub
If Not ActiveSheet.Name = "MEN_EXT" Then Exit Sub
Sheets("MEN_EXT").Activate
If ValVerif = "" Then
Verification
End If
End Sub
Excusez-moi pour le désagrément causé.
Salutations.
Le Pingou
Sansandrine
Messages postés
87
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
14 décembre 2015
7 juin 2010 à 10:14
7 juin 2010 à 10:14
Vous avez pas a vous excuser ! Vous m'avez vraiment bien aidé !!
Et puis ça me permet de perfectionner mon vba !
Encore MERCI d'avoir pris du temps pour m'aider.
Sansandrine
Et puis ça me permet de perfectionner mon vba !
Encore MERCI d'avoir pris du temps pour m'aider.
Sansandrine
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
7 juin 2010 à 10:18
7 juin 2010 à 10:18
Bonjour Le Pingou,
En évitant les négations et en positivant, l'on peut aussi l'écrire :
J'aime bien simplifier au maximum pour faciliter la compréhension ultérieure...
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Bien amicalement et bonne journée à toi.
En évitant les négations et en positivant, l'on peut aussi l'écrire :
Private Sub Worksheet_Calculate() If ActiveWorkbook.Name = "MEN EXT avec calcul de surfaces.xls" _ And ActiveSheet.Name = "MEN_EXT" _ And ValVerif = "" Then Verification End Sub
J'aime bien simplifier au maximum pour faciliter la compréhension ultérieure...
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Bien amicalement et bonne journée à toi.
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
7 juin 2010 à 10:43
7 juin 2010 à 10:43
Bonjour gbinforme,
C'est toujours un grand plaisirs que je note vos coseils et les mettre en pratique.
Amicales salutations.
Le Pingou.
C'est toujours un grand plaisirs que je note vos coseils et les mettre en pratique.
Amicales salutations.
Le Pingou.