Excel: comment annuler dans le fichier actuel uniquement?

100

La fonction annuler / rétablir de Microsoft Excel se comporte différemment de tout autre programme que je connais. La pile d'annulation semble être globale pour tous les fichiers ouverts, de sorte que l'annulation bascule parfois vers un autre fichier et annule quelque chose que vous ne voulez pas annuler. Et si une édition que vous souhaitez annuler était antérieure à une édition dans un autre fichier, vous n'avez pas d'autre choix que d'annuler l'autre fichier.

Je ne suis pas le premier à me plaindre - voir "La folie injustifiée d'Excel" , à peu près à mi-chemin.

En plus de "ne modifier qu'un fichier à la fois", existe-t-il un moyen de faire en sorte que l'annulation d'Excel ne s'applique qu'au fichier actuel?

J'utilise Excel 2003 si cela fait une différence.

Hugh Allen
la source
1
S'il vous plaît voir mon commentaire ci-dessous. Fondamentalement, MS n'a pas le choix. MS le fait pour Excel uniquement en raison de références inter-classeurs. La seule façon de maintenir l'intégrité des relations de formule dans ce contexte est de conserver un historique d'annulation unique. En outre, le rendre facultatif est extrêmement compliqué: comment un utilisateur peut-il choisir entre un ou plusieurs historiques? Quand un utilisateur choisirait-il cela? Ils pourraient le rendre automatique en se basant sur les dépendances de formule, mais cela peut facilement devenir impossible à gérer de manière logique et en termes de performances. N'oubliez pas qu'ils doivent fournir un produit qui fonctionne.
M. TA
1
Certainement une fonctionnalité vraiment irritante, il n’aide en rien qu’une fois que vous vous trompez, vous oubliez ce que vous essayez de copier-coller.
Adamantus
4
Le fait que cela soit toujours présent Excel 2016me donne envie de mourir.
GibralterTop
1
Je ne peux pas vous dire combien de fois j'ai bâclé un fichier que j'avais oublié en maintenant ctrl-z enfoncé et en m'attendant à ce qu'il me ramène à l'état initial du document actuel. minimisé
Billynoah
1
@ Mr.TA Même si cela peut être difficile à mettre en œuvre, je pense toujours que Microsoft aurait intérêt à modifier le comportement d'Excel. Implémentation naïve: un indicateur dans chaque classeur pour déterminer s'il contient des références externes à d'autres classeurs. Les drapeaux commencent false. Lorsqu'une référence est faite à un autre classeur, l'indicateur est remplacé par trueet reste ainsi. Pour les classeurs où l'indicateur est false(c'est-à-dire dans la majorité des cas), les opérations d'annulation affectent uniquement ce classeur. Pour les classeurs où l'indicateur est true, annule conserve le comportement actuel (classeur croisé).
benrwb

Réponses:

34

La solution consiste à ouvrir plusieurs copies d'Excel, une par feuille de calcul. C'est vraiment ennuyant, mais il n'y a pas d'autre moyen. J'ai des raccourcis spéciaux pour mes feuilles de calcul principales, juste pour les ouvrir explicitement. Pour faire ça:

  1. Créez un NOUVEAU raccourci - faites un clic droit sur votre bureau, Nouveau, Raccourci.
  2. Accédez au programme Excel ("C: \ Fichiers de programme (x86) \ Microsoft Office \ Office12 \ EXCEL.EXE").
  3. Créez le raccourci et nommez-le
  4. Modifiez le raccourci et mettez le nom du fichier, entre guillemets, après le programme, dans le raccourci. Vous vous retrouvez donc avec une "cible" telle que:

"C: \ Fichiers de programme (x86) \ Microsoft Office \ Office12 \ EXCEL.EXE" "C: \ Noiselezz \ financier \ financier partagé \ Sales Sheet.xlsb"

Malheureusement, Microsoft n’a vraiment aucune idée de la façon dont les clients utilisent réellement leurs produits. La folie Undo en est un signe: ils continuent aveuglément avec la méthode la plus ridicule d’annulation connue de l’humanité. Ce n'est même pas compatible avec d'autres produits Office.

Une autre folie est le système DDE - le meilleur moyen de ralentir un ordinateur - il faut parfois 12 secondes avant même le lancement du lancement, à cause du DDE. Je continue à corriger les paramètres du registre pour supprimer les déchets DDE, mais chaque fois que MS met à jour Office, ils les réparent utilement.

J'ai travaillé dans la sclérose en plaques et j'ai constaté à quel point ils pensaient - il ne faut pas perdre leur temps à s'attendre à ce qu'ils changent - c'était il y a 10 ans et ils sont identiques aujourd'hui.

Jeremy Kenyon
la source
3
Il peut être utile d’utiliser le drapeau "/ X" pour forcer Excel à démarrer un nouveau processus. stackoverflow.com/a/18291242/4689766 Vous pouvez créer un raccourci générique et y déposer des feuilles de calcul pour les ouvrir de cette façon, ou aller même jusqu'à modifier les associations de fichiers pour l'ajouter ou en faire le comportement par défaut.
GuitarPicker
3
Notez que ceci casse le copier / coller ...
Jens
6
@Jens: FUUUUUUUUUUUUUuuuuuuuuuuuuuuuuuuuuuuu
L'avocat du diable
27

Ce problème a été abordé et résolu sur les forums Microsoft Office for Developers du 14 avril 2011.

Question postée par Vershner:

À l’origine, je l’avais publiée sur le forum des professionnels de l’informatique, mais ils m’ont dit de le poster ici, car le problème était inhérent à leur conception.

Lorsque je clique sur Annuler dans la barre d'outils d'accès rapide, la dernière action dans Excel est annulée, pas la dernière dans la feuille de calcul en cours. Ce n'est pas utile, alors j'ai ajouté une annulation au ruban.

Le ruban est censé s'appliquer à la feuille actuelle, non? Non, cela annule encore la dernière action sur une autre feuille. C'est complètement stupide. Comment puis-je annuler les actions sur la feuille que je visualise? J'utilise Excel 2010.

Réponse acceptée publiée par Bill Manville (MVP Excel):

J'ai proposé à l'équipe produit de l'examiner pour la prochaine version.

Ci-dessous, je donne les extraits utiles de la page correspondante:

  • L' annulation fonctionne au niveau de l'application et annule les modifications apportées dans l'ordre inverse.

  • Le comportement des versions actuelles d'Excel ne sera pas modifié, j'en suis sûr. Mais je vais soulever la suggestion avec l'équipe de produit pour une version future. La question sera de savoir si quelqu'un se fie au comportement actuel et le trouve utile ...?

Mehper C. Palavuzlar
la source
22
Cassé par la conception? C'est dommage. Je ne vois toujours pas la logique de M $. +1 pour l'info.
Hugh Allen
6
J'étais folle de ça AVANT d'avoir découvert que c'était par conception - mais maintenant ....
Simon
5
MS le fait pour Excel uniquement en raison de références inter-classeurs. La seule façon de maintenir l'intégrité des relations de formule dans ce contexte est de conserver un historique d'annulation unique. En outre, le rendre facultatif est extrêmement compliqué: comment un utilisateur peut-il choisir entre un ou plusieurs historiques? Quand un utilisateur choisirait-il cela? Ils pourraient le rendre automatique en se basant sur les dépendances de formule, mais cela peut facilement devenir impossible à gérer de manière logique et en termes de performances. N'oubliez pas qu'ils doivent fournir un produit qui fonctionne.
M. TA
4
@ Mr.TA: Libre / Apache Office a des liens entre fichiers / feuilles et s’annule au niveau fichier / feuille ... en disant simplement que (c’est faisable, totalement faisable, si vous n’êtes pas fainéant - ce qui semble être le cas des développeurs MS).
Erk
1
Je peux créer des liens inter-documents dans Word, tout en annulant un seul document. Clairement, cela peut être fait. Oui, le lien peut être brisé, mais c'est de ma faute. Je préférerais grandement ce comportement à ce héro enflammé.
JMD
7

Avant Excel 2016 et certaines versions ultérieures:

Si vous êtes actuellement coincé avec un historique d'annulation mixte, vous ne pouvez annuler que sur le fichier actuel - à condition de vouloir perdre l'historique d'annulation d'autres fichiers ouverts.

Fermez simplement les autres fichiers ouverts dans Excel, en les enregistrant si nécessaire. Cela effacera leurs parties de l'historique d'annulation, en ne laissant que les actions pour le fichier actuel dans l'historique. Ensuite, vous pouvez annuler ces actions.

Cela dit, je suggérerais d'essayer d'exécuter Excel en tant que processus distincts, comme décrit dans une autre réponse / commentaire. Non seulement il prend en charge le problème stupide de l'historique des annulations mixtes, il vous donne des fenêtres Excel totalement séparées, une pour chaque fichier (par opposition à une fenêtre Excel contenant tous les fichiers ouverts en tant que sous-fenêtres).

ADTC
la source
3
Ceci est une erreur. Au moins dans Excel 2016, la fermeture d'un fichier efface complètement l'historique.
M. TA
1
@ Mr.TA Je ne connais rien à Excel 2016. Testé et fonctionnant à 100% dans Excel 2010, votre flagrant "Ceci est incorrect" était totalement injustifié . Lorsque vous fermez un fichier, seules les actions de ce fichier sont supprimées de l'historique d'annulation. Les actions d'autres fichiers restent dans l'historique.
ADTC
2
La fermeture des fichiers que vous ne souhaitez pas annuler fonctionne également en 2013.
ScrappyDev
3
@ADTC: ce n'est pas injustifié pour moi. J'utilise 2016. Et maintenant je vais localiser mon spray pour l'asthme ...
Erk
2
À compter d'aujourd'hui (avec toutes les mises à jour appliquées), cela fonctionne pour moi dans Excel 2016. Peut-être ont-ils résolu le problème?
ijprest
0

Si vous souhaitez modifier deux fichiers XLSX existants avec deux historiques séparés, il existe une solution de contournement qui fonctionne - enfin, surtout ...

Le premier fichier XLSX que vous ouvrez à partir de son emplacement. Pour le deuxième fichier XLSX, vous démarrez d'abord Excel 2016 à partir du menu Démarrer, puis vous ouvrez le deuxième fichier XLSX via cette deuxième fenêtre Excel.

Assurez-vous de vérifier dans le Gestionnaire des tâches qu'il existe deux processus Excel distincts - comme vous pouvez le voir dans la capture d'écran ci-dessous. Si d’une manière ou d’une autre les deux fichiers A et B sont regroupés dans un seul processus "Microsoft Excel", fermez tous les processus Excel et réessayez.

capture d'écran

Windows semble être fier de son surnom allemand: WinDOOF

Gloschtla
la source
1
Si vous connaissez une méthode permettant à Windows de démarrer un fichier excel.exe dans au moins deux processus, indiquez-nous comment!
Gloschtla