Ajouter du contenu à une cellule

Fermé
bendebs Messages postés 61 Date d'inscription vendredi 22 mars 2013 Statut Membre Dernière intervention 18 novembre 2022 - Modifié par bendebs le 7/07/2014 à 22:42
Raymond PENTIER Messages postés 58669 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 27 septembre 2024 - 8 juil. 2014 à 01:31
Bonsoir,

J'ai une question à laquelle je n'ai pas pu trouver de réponses car je ne sais pas comment expliquer en deux mots ce que je recherche.

Je vous explique ma question :
Est-il possible "d'ajouter" un chiffre ou un nombre dans une cellule en tapant ce chiffre dans une cellule adjacente ? Je ne souhaite pas faire la somme de plusieurs cellule, mais que tout ce que je note dans UNE seule cellule, s'ajoute dans la même cellule, en additionnant les autres chiffres inscrits au par avant, et que la cellule dans laquelle j'ai inscrit le chiffre, s'"efface".
Cela me permettrais, entre autre, de ne pas me retrouver avec 60 cellules.

J'espère que ma question a été claire !
(Pour ma part, je n'en ai pas l'impression)
N'hésitez pas à me le dire

Merci d'avance

3 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 701
7 juil. 2014 à 22:47
Bonjour,

Ton idée est assez souvent évoquée mais ce n'est pas une utilisation standard d'excel.
Pour faire ce que tu veux il faut utiliser des macros et en plus c'est une façon de procéder qui va te causer plus de déboires que de satisfactions car à la moindre erreur de saisie tout ton travail est à refaire.
1
Anakin0 Messages postés 7 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 9 juillet 2014
7 juil. 2014 à 23:07
Je vois une solution en 3 cellules + 1 macro :
Supposons :
en A1 : le chiffre ou nombre que tu veux ajouter
en A2 : le résultat
en B1 : le résultat intermédiaire caché en tant normal

Ecrit en B2 : =SI(A1<>"";A2&A1;"")

Ensuite crée la macro suivante :
Sub AJOUT()
Range("B1").Select
Selection.Copy
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub


Pour plus de facilité, crée un bouton pour y associer la Macro créé.

Tant que tu n'a rien en A1, il n'y a rien en B1 et le nombre est en A2.
Quand tu inscris qqch en A1 et tu cliques sur le bouton, il ajoute le chiffre ou nombre à A2 et efface A1 (et donc B1).
Si tu veux ajouter un espace entre les chiffres/nombres, remplace le & par &" "& dans la cellule B1, c'est-à-dire :=SI(A1<>"";A2&" "&A1;"")
0
Anakin0 Messages postés 7 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 9 juillet 2014
8 juil. 2014 à 01:10
Sorry, j'avais mal compris ta question. La méthode reste correcte si ce n'est qu'il faut alors utiliser la formule suivante dans B1 : =SI(A1<>"";A1+A2;"")

Comme précisé par Gbinforme Si tu lances la macro alors que le nombre en A1 est incorrect ou vide, il faut tout recommencer.
0
Raymond PENTIER Messages postés 58669 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 27 septembre 2024 17 203
8 juil. 2014 à 01:31
Bonjour à tous.

Je suis toujours aussi naïvement étonné de cette curieuse tendance à vouloir compliquer inutilement les choses !
Qu'est-ce qu'il y a de si compliqué, à écrire =12+14 dans la cellule, puis de revenir dans la cellule et d'y ajouter +9, de revenir encore et d'ajouter +33 ?
La cellule affichait 26 au départ, 35 ensuite, 68 à la fin.
Tu n'as utilisé qu'une seule cellule, tu n'as eu besoin que du signe +, tu n'as aucun risque d'erreur, tu ne t'es embarqué dans aucune macro ...
Mes professeurs m'ont toujours mis en garde contre le fait d'utiliser un rouleau compres-seur pour écraser une fourmi, et d'éviter de faire compliqué quand on peut faire simple !

Maintenant si c'est un devoir à faire, ou si tu es en train d'apprendre VBA, la situation n'est pas la même ... mais tu aurais dû le préciser !
0