Supprimer formules conservant contenu cellule [Fermé]

Signaler
Messages postés
6
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
7 avril 2008
-
Messages postés
5301
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
24 mai 2021
-
Bonjour à tous,

Je viens vers vous car j'ai un soucis de programmation. Je ne connais pas VBA et je suis allé sur plusieurs forum pour trouver une solution, mais en vain.

Mon problème, à traiter sous VBA je pense, je cherche à trouver le moyen de supprimer des formules de plusireurs colonnes mais sans supprimer le contenu des cellules.

2 réponses

Messages postés
5301
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
24 mai 2021
1 214
Bonjour !
Permets moi quelques observations préalables :
1/ je penses que tu crois qu'il y a distinction entre la formule et le contenu de la cellule : c'est la même chose, la cellule contient une formule et affiche son résultat, et supprimer l'un EST supprimer les deux, car une cellule ne contient qu'un seul "quelque chose".
2/ je penses que ta question est : remplacer à un moment donné une formule par son résultat , et la réponse de FrappeMisère est la meilleure ou une des meilleures : tu écrases la formule par son résultat . Donc Copier, puis non pas coller mais collage spécial sur la même cellule, et choisir collage en valeur. Possible sur une ou plusieurs cellules ou même plusieurs colonnes sur elles-mêmes.Tout cela doit être facilement enregistrable sous forme de macro. Bien sur tu perds toutes tes formules, et tu dois avoir une solution pour reprendre les calculs initiaux.
3/ si une gestion de stock se faisait facilement sous EXCEL et se résumait à des additions/soustractions de quantités, cela se saurait. En fait tu auras en pratique besoin de journaux de rentrées ou/et de sorties, pouvoir vérifier et corriger des erreurs de saisies, faire des valorisations d'inventaire annuel, etc etc.
Une gestion de stock fait typiquement appel à des fonctions de base de données.

A//Donc une première possibilité, en restant sous Excel, est d'avoir une feuille de base de données pour le stock en cours avec valorisations et tout cela, une autre base de données pour le journal des entrées, une troisième pour les sorties ( on peut regrouper les deux avec un code type E/S).
Et en fin de mois faire un ratissage ( le problème est qu'un même article peut faire l'objet de PLUSIEURS entrées ou sorties pendant la même période, ce que ne permet pas de traiter 3 ou 4 colonnes fixes avec formules ), faire les totaux des mouvements par article, puis récapituler le tout dans une dernière base de données de type "EXTRACTION", et enfin rectifier les valeurs initiales dans la première base.
EXCEL dispose d'un arsenal complet de formules et de manipulations de bases de données, très efficaces, mais assez lourdes à manier et mettre au point.
Les manipulations doivent pouvoir s'automatiser par macros, bonjour les dégâts en cas d'erreur de manip !.

B//A mon avis la meilleure solution est sans doute de travailler sous ACCESS qui est une VRAIE base de données.
Beaucoup de travail pour la conception et la création, mais beaucoup de simplicité pour le magasinier utilisateur après une petite formation, et beaucoup de satisfaction.( Je ne touche aucune royaltie de qui vous savez, hélas ..).

C//Pour en revenir à la solution toute simple que tu cherches : remplacer le contenu numérique d'une cellule par le résultat d'une addition ou soustraction sur l'ancien contenu, tu n'as même pas besoin de formule.
Soit la cellule A1 contenant la valeur 200 ( ou une formule donnant un résultat de 200 ) et où tu veux ajouter 50 :
Sélectionner la cellule A1 puis faire F2, OU double cliquer sur A1 : tu est en mode "modif" et le contenu de la cellule s'affiche avec le curseur dans la cellule ou dans la barre de formule ( selon tes options préférées ).
Dans la barre de formule et à la suite de l'affichage, taper +50, puis faire F9 ( "calcul immédiat" ) : la barre de formule contient alors le résultat 250 ( l'ancien contenu est disparu , mais il est encore temps de faire Echap ) faire ensuite ENTREE pour déposer le nouveau résultat dans la cellule A1. Bien sur la formule initiale éventuelle est disparue, mais elle est inutile.
Cette méthode est susceptible de beaucoup de perfectionnements : avant de faire F9 on peut par clics sur des cellules ajouter/soustraire le contenu d'autres cellules, ou introduire des expressions ou formules faisant appel à des cellules, comme s'il s'agissait d'une saisie initiale, et obtenir le résultat global avant de valider.
On peut même faire des étapes successives de plusieurs F9 avant le ENTREE final.

D//Finalement ton problème de stock vu sous l'angle simple peut être traité ainsi :
de gauche à droite :
trois colonnes pour le code ( pouvoir y faire une recherche ) et le libellé article, ET la date de mise à jour,
une colonne quantité initiale ( valeurs numériques ),
une colonne quantités ENTREES ( une seule valeur possible par article pour le mois/période en cours, mais elle peut être "additionnée" selon la méthode exposée en C// ),
une colonne quantités SORTIES ( même remarque )
une derniére colonne Stock final ( formule =stock ini + entrées - sorties )
En fin de mois ou de période, réinjecter le stock final comme stock initial : copier coller spécial en valeur la colonne stock final sur la colonne stock initial. Corriger la/les dates. Vider les entrées et sorties . La formule Stock final n'est pas perdue et continue à agir.

J'ai été un peu longuet ..j'espère quand même t'avoir apporté un petit quelque chose, en plus de l'impatience !.
Au revoir et bon courage
8
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
6
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
7 avril 2008

Bonjour Nyctalope,

Merci pour ta réponse, mais , pour plus de facilité, puis-je t'envoyer le fichier que j'ai essayé de mettre en place sans perdre de vue que je n'ai aucune connaissance sur excel et VBA.

Je sais qu'une gestion des stocks n'est pas aussi facile que ca et , tout comme toi j'aurais préféré utiliser access mais voilà je suis dans une petite société qui me demande d'utiliser excel et qui ne possède pas access.(pour info).
J'ai réussi à créer une base de données , que j'appelle ainsi, avec uniquement des formules avec lesquelles j'utilise un calendrier "perpétuel" pour pouvoir gérer mon stock au jour le jour.

Je ne veux pas utiliser la fonction copier avec collage spécial car le magasinier doit préparer du matériel au plus vite pour les ouvriers partant sur le chantier. Et se sera lui qui s'occupera principalement des différentes appros et livraisons. Mais j'avais déjà utilisé cette solution.

Mon but est de rendre la tâche du magasinier le plus simple du monde sans qu'il est à faire d'autre manip que de rentrer les entrées sortie de matériel.

Merci A+
Messages postés
5301
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
24 mai 2021
1 214 >
Messages postés
6
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
7 avril 2008

Re bonjour
Mon début de réponse vient de disparaître ( quelque part ? mais où ? ) et je recommence !
Je veux bien regarder ton travail sous Excel, et voir si je peux t'apporter quelqu'aide utile.
Il faudra peut être patienter quelques jours, car bien que retraité je suis assez occupé, notamment pour des dépannages bénévoles, et je ne pourrai pas y consacrer un temps énorme !.
Je te donnerai une première réaction assez vite.

Un premier problème est que, bien qu'ayant formé longtemps des stagiaires sous EXCEL ( diverses versions successives ), je me suis arrêté à la version EXCEL 97, lors de ma cessation d'activité. Je n'avais plus aucune raison de continuer à enrichir notre ami Bill, qui ne m'a jamais contacté pour me remercier de n'avoir jamais, pendant presque 20 ans, piraté ses logiciels scandaleusement onéreux.

Donc, si possible :
1/ ajoute quelques explications sommaires dans une des feuilles du document, surtout ce que tu cherches à faire, et ce que tu peux demander à ton magasinier, sans le sous-estimer. Précise la version d'Excel utilisée. Garde le maximum d'exemples d'articles utilisés sauf si problème sérieux de confidentialité.
2// essaye de sauver ton document sous une version antérieure, si possible 97 ou 95, au pire 2000 ( en pratique pendant "Enregistrer sous", choisir le format du document ).
3// comprime le avec WinZip ou WinRar, si possible, s'il est très volumineux.
4// envoie le comme fichier joint à l'adresse suivante <rene.masson2@libertysurf.fr> et donne moi ton e-mail
Dans le A: de ton mail tâche de préciser NYCTACLOPE pour un repérage plus facile dans la masse de spam.

PS : à l'attention des spammeurs ou mauvais plaisants éventuellement alléchés et tentés d'utiliser cette adresse, c'est du temps perdu, j'ai un excellent antispam, et cette ancienne adresse n'est utilisée que comme "paraspam" et pour quelque temps seulement, j'ai d'autres adresses relais. De plus, même en camouflant leur adresse, ils risquent un très désagréable retour de bâton sous une forme inattendue.

J'essayerai donc de récupérer ton fichier, au besoin en passant par un relais genre Word
En cas de problème, j'essayerai de me procurer la bonne version Excel, à moins que tu puisse me la prêter le temps de .... ( elle sera ensuite détruite , promis !.. ).

A +
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
561
il y a ce qu il faut dans le menu edition : collage spécial, puis coller les valeurs.
Messages postés
6
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
7 avril 2008

Salut Frappe misere,

Merci de m'aider, mais ta solution est trop longue. Ce que je veut faire, c'est une gestion simple des stocks. Je veux garder tout de même un lien d'une colonne avec mon stock. Car je veux que le magasinier seul fasse une saisie du matériel entrant, sortant ou retour de chantier.
Messages postés
6
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
7 avril 2008

Salut frappe misère

Merci de m'aider, mais ta solution est trop longue. Ce que je veux faire, c'est une gestion simple des stocks. Je veux garder tout de même un lien d'une colonne avec mon stock. Car je veux que le magasinier seul fasse une saisie du matériel entrant, sortant ou retour de chantier.