rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

[VBA] conditions dans une cellule d'Excel

Thierry, le vendredi 2 mars 2007 à 13:50:07
Bonjour,

j'ai un souci avec Excel et Visual Basic.

Je souhaite ecrire dans la cellule d'Excel (1,1) une condition, par exemple, =9. J'ai mis la cellule en format texte pour que le = reste affiché.
Je souhaiterai ensuite comparer les valeurs de la cellule (1,2) a cette condition.

J'ai essayé avec toutes sortes de concatenation du genre =if(A1 & B1=true;1;0) mais ca ne marche pas.

Et ca m'embete de faire une macro du style
If cells(1,1)="=9" then....
Ca marche mais c pas tres flexible!!! :)

Si vous avez un idée, une piste, ou meme une direction ou chercher, ce serait sympa.
Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0
Répondre à Thierry  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
JvDo, le samedi 3 mars 2007 à 19:01:29
Bonsoir,

je ne comprends pas ce que tu veux faire avec VBA mais je peux te dire qu'il suffit que tu utilises Range("A1").value=Range("A2").value ou encore [A1]=[A2] dans tes IF THEN.

remarques :
je ne vois pas pourquoi tu gardes le égal dans ce que tu appelles (à tort) une condition : =9

tu peux rester dans excel en mettant 9 en A1 et tu utilises une formule (en A3 par ex) =Si(A2=A1;"toto";"titi")
cette dernière approche n'est valable que si tu veux mettre une valeur en A3, valeur qui dépend de l'égalité A2=A1 qui elle est la condition de ta formule SI()

A+
Répondre à JvDo

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
thierry, le dimanche 4 mars 2007 à 20:22:37
Bonsoir,

d'abord merci d'essayer de repondre a mon probleme.

En fait, c'est plus compliqué que ca. Je voudrais que l'uitilisateur de la feuille Excel, ne puisse avoir le choix pour remplir le cellule (1,1) qu'entre :
≥9
=9
≤9

Il est donc important que le signe =ou ≤ ou ≥ soit visible. (Pour le probleme du choix j'utilise l'option de Validation de données.)

Mon probleme reside donc dans le fait que je n'arrive pas a utiliser ce signe choisi.

En concatenant, on peut ecrire dans une autre case, la valeur de la cellule (1,2) et la condition.
Par exemple, si la case (1,2) contient 10, on obtiendra 10=9 en cellule (1,3). Et je voudrais que la cellule (1,4) affiche donc FAUX (ou aute chose signifiant l'erreur precedente).

La concatenation n'etait qu'une idée, mais si vous aviez une idée pour que si j'ai toute une liste de valeurs en colonne 2, j'ai dans une colonne autre un resultat de la compraraison avec cette "condition" en cellule (1,1).

Merci d'avance
Répondre à thierry

3


  • 2
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
JvDo, le dimanche 4 mars 2007 à 23:20:31
Bonsoir,

Ok, il suffit d'utiliser la fonction EVAL(A2&$A$1) où A1 contient =9, >=9 ou <=0, et A2 contient 10 par exemple.

là, ça retournera FAUX.
si tu mets 9 en A2, ça retournera VRAI

NB : EVAL() est une fonction de la bibliothèque Morefunc (http://xcell05.free.fr/downloads/Morefunc.zip ) de Laurent Longre. Il faut donc l'installer d'abord.

Tu peux également écrire ta propre fonction :

Function evalue(montexte As String) As Boolean
evalue = Evaluate(montexte)
End Function

qui fait la même chose

A+
Répondre à JvDo

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Thierry, le lundi 5 mars 2007 à 09:44:29
Ok merci, c pile ce dont j'avais besoin!

Une petite derniere question (un peu part curiosité :))

La fonction evalue définie, n'est pas utilisable comme tel dans Excel. (ecrire dans une cellule, =evalue(B3) ne marche pas).
C'est possible de definir une fonction sous VBA pour l'utiliser sous Excel? Si oui, comment?

A plus
Répondre à Thierry

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
JvDo, le lundi 5 mars 2007 à 14:23:39
Bonjour,

evalue(montexte As String) As Boolean est bien entendu une fonction à définir dans VBA.

tu colles le code que je t'ai indiqué dans un module de ton classeur.

ensuite seulement tu pourras l'utiliser

A+
Répondre à JvDo

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Thierry, le vendredi 9 mars 2007 à 09:18:24
Merci

mon probleme est resolu, je sais pas s'il faut changer le statut de la conversation ni comment on le fait. Alors si qlq'un sait qu'il n'hesite pas a le faire:::: :)
Répondre à Thierry

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Micou, le jeudi 4 octobre 2007 à 10:16:18
Bonjour,

pourrai-tu expliquer comment tu mets le format de la cellule en texte. Est-ce par logicielle ou directement dans Excel?

Merci à toi.
Répondre à Micou

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 hey, le lundi 4 février 2008 à 18:53:10
bonjour tout le monde,

je voudrais savoir ce qu'on peut faire concretement avec VBA sur excel en finances??
des pistes?

merci
Répondre à hey
Logiciels pertinents trouvés dans les téléchargements
Télécharger Excel Viewer 2003Excel Viewer - Avec Microsoft Office Excel Viewer 2003, vous pouvez ouvrir, afficher et imprimer des classeurs Excel (fichiers XLS ), même...Catégorie: Tableur
Licence: Freeware/gratuit
Télécharger MOREFUNC (Macro complémentaire EXCEL) 5.06MOREFUNC (Macro complémentaire EXCEL) - Morefunc est une macro complémentaire proposant 67 nouvelles fonctions de feuille de calcul pour Excel. Ces fonctions sont...Catégorie: Tableur
Licence: Freeware/gratuit
Télécharger Ms Word Excel Cracker 2.2Ms Word Excel Cracker - Ms Word Excel Craker est une application permettant de retrouver les mots de passe perdus ou oubliés pour les fichiers.xls...Catégorie: Suite bureautique
Licence: Freeware/gratuit
Télécharger ConnectCode Free Excel Training 1.01ConnectCode Free Excel Training - Office Excel est un incontournable quand on utilise Windows comme l'est Word. Néanmoins son utilisation n'est pas des plus...Catégorie: Bureautique
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [VBA] conditions dans une cellule d'Excel »