Problème macro dans Excel 2013 mais pas dans 2003-2007-2010

Bonjour à vous,

J'ai découvert un bizarre de problème dans Excel 2013.

Vous pouvez probablement le recréer ou utiliser le classeur que j'ai joint à ce thread

- Ouvrir un nouveau classeur excel

- Ajouter une "Feuil2"

- Dans VBA, ajouter un UserForm et un Module

- Dans dans le code de Module 1, ajouter:

sub bt()

userform1.show

end sub

- Dans la fenêtre UserForm1, ajouter un bouton

- Dans le code du bouton, ajouter:

set f = worksheets(2)

f.activate

f.range("D10").select

unload me

Set f = nothing

- Finalement, dans la "Feuil1" ajouter un bouton et le lier à la macro "bt"

Donc lorsque tu cliques sur le bouton de la feuille 1, ça ouvre la fenêtre userform1. En cliquant sur le bouton dans UserForm1, ca active la "Feuil2" et sélectionnes la cellule "D10". À partir de là, ajoutez n'importe quoi comme texte et vous allez remarquer que ça s'écrit dans la cellule qui était sélectionnée dans la feuille 1. Lorsque vous changez de cellule, le texte se déplace dans "D10". Si vous essayez de supprimer le contenu de la cellule D10 ou de fermer le classeur, il ne se passe rien. Faut aller dans la feuille 1 et revenir à la feuille 2 pour que ça se replace.

Si on saute l'étape du userform, ça ne fait pas se problème. Ça ne se produit pas dans les autres version d'Excel avec le même classeur. J'ai essayé sur plusieurs ordinateurs et ça se produit sur tous.

C'est sûr que c'est en lien avec l'activation de la feuille 2 à partir du userform qui s'affiche lorsque la feuille 1 est active mais comment régler ça ??!

J'ai cherché un peu sur Internet mais c'est difficile de bien décrire ce que je recherche.

Si quelqu'un a une idée.....

Je vous remercie!

35classeur1.xlsm (18.36 Ko)

Bonjour,

Par curiosité tu peux tester avec f.Select ?

eric

Ca règle le problème en parti dans le sens où on ne voit pas le texte s'écrire dans l'autre cellule mais dans celle sélectionnée.

Par contre, si on change de cellule et revient sur celle qui était sélectionnée pour effacer le texte, ca ne fonctionne pas.

Fermer le classeur non plus.

Faut toujours passer à une autre feuile et revenir pour rendre le tout correct

Merci pour l'idée!

Je ne peux pas tester n'ayant pas 2013.

Et si tu mets UserForm1.Hide au lieu de Unload Me ?

Non aucun changement!

C'est vraiment bizarre comme problème me semble. Pourtant, ça fait quelques années qu'Excel 2013 est sorti!

Merci

Bonjour

En cherchant, il y a quelqu'un qui a signalé qu'avec ouverture de l'userform en mode non modal (0), cela résout le problème

Voir icihttps://forum.excel-pratique.com/excel/bug-d-activation-d-une-feuille-excel-t68585.html

WOW!!! Ça règle le problème!

Faut ajouter vbModeless après l'appel userform

"UserForm1.Show vbModeless"

Merci infiniment!

Banzai64 a écrit :

Bonjour

En cherchant, il y a quelqu'un qui a signalé qu'avec ouverture de l'userform en mode non modal (0), cela résout le problème

Voir icihttps://forum.excel-pratique.com/excel/bug-d-activation-d-une-feuille-excel-t68585.html

Rechercher des sujets similaires à "probleme macro 2013 pas 2003 2007 2010"