Comment Afficher une valeur dans une autre cellule

Bonjour,

Voici le petit problème auquel je suis confronté.

j'aimerais qu'une formule, contenu dans une cellule, s'active sur une autre cellule quand une valeur est entrée dans une autre cellule (ce qui donne pour être plus précis ) :

J'ai obligatoirement 3 cellule => A1 ; B1 et C1

en A1 se trouve une formule,

en A2 est la case ou j'écris un nombre,

en A3 est la case ou s'afiche

j'aimerais que la formule (ou un code) contenu dans A1 me permette de faire l'action suivante :

=> si dans A2 il y a un nombre (1 ou 2 ou 10 etc...), alors afficher "+" dans la cellule A3, sinon, A3 reste vide.

Est-ce que vous auriez des réponses pour me permettre d'avancer?

merci d'avance

larsen

Bonjour et bienvenue

Merci de joindre ton fichier car je ne comprends pas ta demande.

Si on s'en tient à :

larsen a écrit :

si dans A2 il y a un nombre (1 ou 2 ou 10 etc...), alors afficher "+" dans la cellule A3, sinon, A3 reste vide

en A3 cette formule :

=SI(ESTNUM(A2);"+";"")

Mais vu que tu dis également

larsen a écrit :

j'aimerais que la formule (ou un code) contenu dans A1 me permette de faire l'action suivante

je suppose que c'est pour une bonne raison que je ne vois pas.

Amicalement

Nad

avec le fichier, on a un changement de cases :

la case E17 est la case ou doit s'afficher le "+"

la case F17 est la case ou l'on met un chiffre

et une case A5 feuille 2 ou l'on met cette fameuse formule/condition ou ce que l'on veut.

mon but est de pouvoir faire afficher le + sans protèger ma feuille pour qu'on puisse éventuellement ajouter des lignes au tableau

62projet.zip (110.10 Ko)
what

On va repartir de zéro.

Décris-moi toutes les opérations ; actuellement tu as :

Si en D17 est inscrit un chiffre alors E17 ="+"

Maintenant, que doit-il se passer si en F17 tu écris 1 par exemple ?

Je ne comprends pas ce que viens faire la cellule A5 de la feuille 2 et le but à atteindre :

mon but est de pouvoir faire afficher le + sans protèger ma feuille pour qu'on puisse éventuellement ajouter des lignes au tableau

Nad

je me suis trompé dans les lettres mais ça ne change pas énormément.

je ré-explique donc,

si j'écris un nombre en F17, il y a apparition du "+" en E17

si j'écris quelque chose en D17, il ne se passe rien en E17

pour le moment, la cellule exécute ce que je demande par une entrée =SI(F17>0;"+";"")

(la condition sur le xls est fausse à cause de ma confusion de lettres, je l'ai donc corrigé ci-dessus)

Le A5 de la feuille 2 est la case qui contiendrait la formule à rentrer pour qu'il n'y ait pas de formule en E17 feuille 1

Le but à atteindre est :

faire en sorte que la case E17 ne comprenne aucune formule, pour que les utilisateurs du document ne modifient pas la formule de la case. (exemple, erreur de manip de leur pars)

comprends-tu?

Re

Je comprends mieux ton but à atteindre mais à ce moment là la logique voudrait qu'il faut empêcher la suppression des formules dans toute ta feuille et pas seulement de la colonne E.

Tu peux verrouiller les cellules contenant une formule et protéger la feuille ou alors utiliser une macro qui ferait les calculs mais n'afficherait pas les formules ; juste les résultats.

Ton Choix ?

Nad

je crois que tu met le doigt sur un autre problème : ajouter des lignes à souhait dans le tableau.

une macro qui ferait les calculs serait bien.

Protéger la feuille, je l'ai déjà fait, mais celà m'enpêche d'ajouter des lignes à souhait dans le tableau.

les priorités sont donc les suivantes : pouvoir ajouter des lignes au tableau et donc pouvoir faire en sorte qu'à l'ajout des lignes, il y ait aussi les formules qui s'y ajoutent (où qu'on les ajoute sans que ce soit trop compliqué).

J'espère que celà est réalisable.

larsen

Re

Teste ce fichier :

Nad

c'est super cool. c'est exactement ce que je voulais!!!

par contre, il y a quelques problèmes :

quand on met un nombre en D17, la case D23 n'affiche pas le résultat.

  • quand on supprime des nombres, et qu'on les supprime d'abord à droite et puis à gauche, il y a un problème de - décomptage => avec rien dans les cases D et E, il reste toujours un affichage d'un résultat.
  • dans la case "prix total" S16, il y a des bugs d'affichage aussi
  • pas d'affichage des "+" dans NB en Q16

=> le plus gros pb, c'est qu'il n'accepte pas les modifications : faut effacer tous les chiffres de la ligne pour qu'il prenne en compte le changement de nombres.

Mais c'est un taf extra que t'a fais.

Est-ce compliqué?

(je rappelle, j'ai un Microsoft office 2003. peut être que sous 2007 ça passe mieux sans bugs)

-- 09 Juin 2011, 12:57 --

[quote="larsen"]=> le plus gros pb, c'est qu'il n'accepte pas les modifications : faut effacer tous les chiffres de la ligne pour qu'il prenne en compte le changement de nombres.

quote]

je dirais même que c'est assez aléatoire au niveau des cases.

(ps : je vais manger et je reviens plus tard)

Re

Pour que les modifications soient acceptées, il faut que les formules restent en place.

Nouveau fichier

  • Les formules se mettent en place dès qu'il y a une désignation (colonne C)
  • Si une formule est effacée par erreur, revalider la désignation.
  • Bouton pour ajouter des lignes
  • Bouton pour remise à blanc du tableau

Nad

Que dire...

C'est extra, je te remercie.

larsen a écrit :

Que dire...

Faire ceci

Amicalement

Nad

ok. je vais le faire.

juste une dernière question,

si je veux faire un ajout d'une colonne, où dois-je aller pour faire des modifications? car j'avoue, je ne vois pas où aller pour modifier la donnée qui change de ligne les données résultat de S19

en plus clair et en exemple ça fais : si je veux ajouter une colonne entre S et R, dois-je faire appel à toi pour modifier les formules? car je ne vois pas où tu as fais les modifications de formules.

et encore une fois merci. remarquable

Re

Les formules sont dans le code qui est en Feuil1 (click droit sur le nom de l'onglet ==> Visualiser le code)

Si tu ajoutes une colonne, tu dois vérifier toutes les lignes du genre :Target.Offset(0, 2) ainsi que les Range("D" & derlg).afin de modifier le chiffre (ou lettre) si nécessaire.

Target correspond à la cellule de la colonne C

2 pour 2 colonnes à droite (soit E)

Pour modifier une formule dans le code de la feuille, tu te mets sur une cellule du tableau (exemple E2) et tu inscris manuellement la formule.

Tu lances l'enregistreur de macro - Sélectionne E2 et fais F2 puis entrée - Stoppe l'enregistreur.

Un code s'est créé dans un module - Ce genre :

Sub Macro1()
'
' Macro1 Macro
'

'
    ActiveCell.FormulaR1C1 = "=IF(RC6>0,""+"","""")"
    Range("F17").Select
End Sub
 

Tu copies la partie "=IF(RC6>0,""+"","""")" et tu remplaces la formule dans le code de la feuille. (Fais attention dans quel Target.Offset(0, X) la formule doit aller)

Amicalement

Nad

ok.

encore une fois merci.

Larsen

Rechercher des sujets similaires à "comment afficher valeur"