"Ne rien faire"?

r0then

XLDnaute Nouveau
Cela parâit peut être stûpide mais je sais pas comment faire pour dire a excel de ne rien faire...lol:)

Je m'explique ; j'ai une colonne dans laquelle j'encode des valeurs et j'aimerai mettre une condition a cette colonne tout en sachant continuer d'encoder

A1 = Annulé
B1 = Si A1=Annulé alors B1=1 sinon B1= un chiffre que je tape

Voila j'ai essayé plusieurs formules mais pas moyen de trouvé la bonne..

C'est peut etre dans validation de données que je dois aller ?


Merci

A+ Daniel
 

jeanpierre

Nous a quitté
Repose en paix
Re : "Ne rien faire"?

Bonsoir Daniel,

Si A1=Annulé;B1=1, jusque là pas de souci, ensuite si ce n'est pas cela, tu veux rentrer une valeur..... Ce n'est pas possible.... soit la formule te renvoie une autre valeur, soit une vide "", mais tu ne peux, en même temps avoir une formule et pouvoir taper dans la cellule...

En VBA, faisable.... mais pas trop mon truc là.

Bonnes fêtes tout de même.

Jean-Pierre
 

r0then

XLDnaute Nouveau
Re : "Ne rien faire"?

Bonsoir Daniel,

Si A1=Annulé;B1=1, jusque là pas de souci, ensuite si ce n'est pas cela, tu veux rentrer une valeur..... Ce n'est pas possible.... soit la formule te renvoie une autre valeur, soit une vide "", mais tu ne peux, en même temps avoir une formule et pouvoir taper dans la cellule...

En VBA, faisable.... mais pas trop mon truc là.

Bonnes fêtes tout de même.

Jean-Pierre


D'accord jeanpierre, je pensais que c'était un simple problème de syntaxe mais apparement la syntaxe d'excel ne permet pas de conditionner une cellule tout en la lassant active

Bonne fêtes à toi aussi
 

skoobi

XLDnaute Barbatruc
Re : "Ne rien faire"?

Re bonjour,

voici une macro évenementielle à mettre dans le code de la feuille en faisant bouton droit sur l'onglet de la feuille puis "visualiser le code":

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
    If Target.Offset(0, -1).Value = "Annulé" Then
Debug.Print Target.Offset(0, -1).Value
        Target.Value = 1
    End If
End If
End Sub

chaque fois que tu écris un chiffre dans la colonne B, cette macro s'execute.
 

firelord

XLDnaute Nouveau
Re : "Ne rien faire"?

Il y a toujours un moyen de contourner le problème. Ce message est pour ceux qui liraient encore (comme moi) ce topic 4 ans après^^.

Voila mon exemple qui aidera pas mal d'étudiants avec des calculs simples à réaliser :

On a un prix (on l'appellera montant dans la formule) et on doit lui appliquer une remise de 5 % si il est supérieur à 1000 €.
La formule est donc :
- si le prix est supérieur à 1000€, j'applique la remise de 5%
- si le pris n'est pas supérieur à 5%, je n'applique pas la remise.
Et si comme moi vous ne savez pas comment dire ça, alors on bidouille et on contourne mais de façon simple^^ ce qui donne :

montant..................prix remisé
10€........................10€
15€........................15€
2000€.....................1900€

Vous devez renommer les cellules A2,A3,A4 en montant.
La formule va bien entendu dans prix remisé puisque c'est ce que l'on cherche. Pas besoin de la recopier ensuite pour chaque lignes, incrémentez.

et la formule que vous attendez tous :
=SI(ESTVIDE(montant);"remplir";SI(ESTTEXTE(montant);"pastexte";SI(montant<0;"positif";SI(montant>=1000;montant*(1-5/100);SI(montant<1000;montant)))))

Je décortique :

SI(ESTVIDE(montant);"remplir";SI(ESTTEXTE(montant);"pastexte";SI(montant<0;"positif"; = ce ne sont que des indications pour celui qui ne comprend pas ce qu'il faut faire^^

SI(montant>=1000;montant*(1-5/100) = si montant supérieur à 1000, alors on fait montant*(1-5%). On a donc le prix remisé si le prix est supérieur ou égal à 1000€. mais si il est inférieur je veux donc qu'il me laisse le prix tel quel alors voici ce que je fais :

SI(montant<1000;montant = si montant inferieur à 1000 alors le réécrire^^ c'est bête comme chou mais bon ça marche!!
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 400
Messages
2 088 086
Membres
103 710
dernier inscrit
amin Saadaoui