Fichier qui se fige lorsqu'un code VBA est lancé

Bonsoir,

Afin d’aider un autre membre sur un autre fil, j’ai placé dans le fichier ci-joint un code sur la feuille « Bilan » qui se déclenche à chaque fois qu’on sélectionne cette feuille. Ce code fonctionne assez bien, bien qu’il ne soit pas encore terminé.

Mais mon problème est ailleurs. Si je supprime par exemple la feuille « local 2 » (la feuille « local 1 » quant à elle ne doit jamais être supprimée) tout va bien.

Par contre si je supprime la feuille « local 3 » - probablement puisqu’alors c’est la feuille « Bilan » qui est activée à sa place – le fichier complet se fige et je n’ai pas d’autre choix que de fermer l’application Excel par le gestionnaire des tâches.

Savez-vous comment je pourrais empêcher le code en place sur la feuille « Bilan » de se déclencher lorsque je supprime la dernière feuille placée juste avant la feuille « Bilan » ou avez-vous n’importe quelle autre solution afin d’éviter ce problème ?

A vous relire.

52demo.xlsm (139.86 Ko)

Bonsoir à tous,

Bonsoir Yvouille,

Peut-être en modifiant ta boucle comme ceci :

........
Position_Total = 5

For i = Sheets.Count To 2 Step -1
    If Not Sheets(i - 1).Name Like "local*" Or Sheets(i - 1).Name = "local 1" Then GoTo Etiquette
    Feuille_traitée = Sheets(i).Name

' Divers totaux
For j = 18 To 39 'Selon les anciennes formules remplacées, de la ligne 18 à la ligne 39
    With Sheets(Feuille_traitée)
........

Cordialement.

Salut Papou-net et merci pour ta réponse,

Malheureusement ta solution ne fonctionne pas. Tout d'abord le fait que le fichier se fige lors de la suppression de la feuille "local 3" reste et sinon ce sont de fausses feuilles qui sont maintenant récapitulées suite à tes modifications.

N'avais-tu pas tester cette modification ?

Cordialement.

Bonjour Yvouille,

Je n'avais pas testé hier soir mais je viens de le faire et je n'ai pas observé de figeage du programme.

Par contre, ne connaissant pas la fonctionnalité de l'application, et n'ayant pas le courage de décortiquer l'ensemble du code, je ne sais pas si les feuilles récapitulées sont fausses.

Une question au passage : as-tu bien corrigé l'indice i de la boucle principale : For i = Sheets.Count To 2 Step -1 ?

Sinon, message d'erreur assuré.

Si tu peux expliquer les grandes lignes du programme, peut-être pourrions-nous progresser efficacement ?

A +

Cordialement.

Salut Papou-net,

Papou-net a écrit :

Une question au passage : as-tu bien corrigé l'indice i de la boucle principale : For i = Sheets.Count To 2 Step -1

J'ai utilisé ton code exactement comme tu l'as proposé, mais ça récapitule par exemple la feuille "Bilan" qui ne devrait pas l'être.

Sinon mon programme fonctionne très bien à l'exception que le fichier se fige si je supprime - dans mon fichier exemple - la feuille "local 3". Si le fichier ne se fige pas chez toi - ce qui est très bizarre - je pense que tu ne pourras pas vraiment m'aider.

Merci quand même pour ton aide.

Bonsoir à tous,

Sur 2010 je n'ai pas constaté non plus de figeage.

Que je supprime la 3 directement, ou la 2 suivie de la 3.

Remarque: je refuse la mise à jour des liens à l'ouverture.

eric

Salut Eric et merci pour ta participation.

J'ai essayé de supprimer les liaisons mais j'ai toujours ce plantage Il faudra que j’essaie lundi matin au travail, sur Excel 2010.

Si quelqu'un a constaté ce problème chez lui, ce serait sympa de me le faire savoir (en indiquant si c’est avec ou sans liaisons et avec quelle version Excel).

Et si quelqu’un a une solution à mon problème ……….

Bonnes salutations.

Bonjour Yvouille, Forum

Chez moi, la macro plante

si je supprime le figeage de l'ecran, c'est ok

ou si je remet a true le figeage de l'écran avant les deux dernières lignes de la macro

Bonjour,

Pas de figeage chez moi non plus (2010)

A+

Salut Galopin et merci pour ta participation. Comme déjà dit, je vais voir moi-même demain sur Excel 2010 si ça passe ou non.

Salut à toi aussi Bob et également merci Je n'ai toutefois pas compris tout ce que tu m'indiques et ça m'intéresse particulièrement puisque tu dis que ça plante aussi chez toi.

BOB71AU a écrit :

si je supprime le figeage de l'ecran, c'est ok

Que veux-tu dire par là, comment fais-tu cela ?
BOB71AU a écrit :

ou si je remet a true le figeage de l'écran avant les deux dernières lignes de la macro

et par ça ?

Cordialement.

Je réponds pour Bob71AU... qu'on ne voit pas trop souvent.

Le figeage de l'écran c'est

Application. ScreenUpdating = False

quand tu remets à True ça affiche à nouveau...

Application. ScreenUpdating = True

A+

Bonsoir Yvouille, Galopin01

Merci a Galopin01 qui t'a donné les explications dont je parlais

Wow,

Selon mes essais ci-joint, ça a l'air de jouer

Mais j'aimerai bien comprendre pourquoi ça ne jouait pas avant et pourquoi ça joue ainsi ?

Déjà merci à tous deux pour votre précieuse aide.

Cordialement.

20demo-v2.xlsm (140.02 Ko)
Rechercher des sujets similaires à "fichier qui fige lorsqu code vba lance"