Ajustement auto des formules après suppression de ligne
Bonjour,
J'ai un classeur de comptabilité contenant deux feuilles principales.
- La première contient une liste d'achats à raison d'une ligne par article. Plusieurs lignes consécutives faisant partie d'une même facture et relatives à un même type d'article constituent un "groupe".
- La seconde feuille reprend (en gros) les données de la première en sommant (par colonne) les valeurs d'un même groupe. Ça peut représenter un nombre variable de lignes de la première feuille.
J'ai donc dans la seconde feuille une série de formules faisant référence à la première, (éventuellement à l'aide d'une feuille annexe réservée aux calculs pour la gestion des regroupements).
Le problème qui se pose est celui de la suppression de lignes dans la première feuille, par exemple lorsqu'une opération a été entrée par erreur ou en double.
Cette action produit systématiquement des erreurs #Ref dans la seconde feuille, puisque Excel cherche automatiquement à ajuster les adresses des cellules auxquelles les formules font référence.
C'est bien ennuyeux, mais je comprends que cet ajustement des formules lors d'une suppression est une fonction utile d'Excel.
Je pensais m'en tirer en suspendant le calcul des formules avant de supprimer les lignes mais ça ne suffit pas : la même erreur se produit au moment où je rétablis le calcul automatique. Excel "se souvient" que la formule pointait vers une valeur qui n'existe plus.
Y a-t-il une stratégie générale pour contourner ce genre de problème, ou est-ce que je dois tout reprendre en procédant différemment ?
Merci d'avance pour vos suggestions. Je ne suis qu'un "Excelliste" amateur et je galère lorsque les choses se compliquent !
Bonjour
Une idée (non testée)
A la place de supprimer la ligne, effaces-la et refais un tri
Sinon un sujet semblable au tien à été traité
https://forum.excel-pratique.com/excel/supprimer-des-lignes-dans-deux-feuilles-t39018.html
A partir de cette suggestion, j'ai trouvé la solution que je cherchais :
Dans la feuille 1, copier toutes les lignes au-delà de la plage à supprimer, puis sélectionner la première ligne de cette plage et faire coller.
Excel ne voit que des changements de valeurs et non des suppressions ou ajouts de lignes ; il ne touche donc pas aux formules de la feuille 2.
Ensuite il ne reste plus qu'à effacer (pas supprimer !) les lignes excédentaires en fin de tableau dans la feuille 1
La méthode dans la référence citée utilise une macro pour éliminer les lignes orphelines comportant des #Ref, mais comme dans mon cas, les modifications de la feuille source sont effectuées manuellement, je peux me permettre de faire cette petite manipulation (copier/coller plutôt que supprimer) qui évite de générer des erreurs.
Merci beaucoup pour cette réponse rapide.