Réponse à choix mutiples

Bonjour;

est-il possible qu'il y est plusieurs possibilités de réponses pour une même condition.

Par exemple: si la case A1 est égale à 1 alors la case A2 est soit égale à 1 ou soit égale à 2.

If range("A1") = 1 then range ("A2") = 1 ou 2 

Merci de vos réponses

Bonjour

Cela parait bizarre car tu affectes 1 à A2 et ensuite 2

Dans quel contexte tu veux utiliser cette condition

Si tu veux soit placer 1 ou 2 dans la cellule A2 utilises Rnd

If Range("A1") = 1 Then Range("A2") = Int(Rnd() * 2) + 1

Merci de ta réponse.

Mais comment faire avec du texte?

Si je met

If Range("A1") = "a" Then Range("A2") = Int(Rnd() * "b") + "c"

ça ne marche pas. Ca me marque "incompatibilité de ce type". Et ça parait logique puisque l'on ne peut pas multiplié des lettres. Alors comment faire?

Merci de votre aide

Bonjour

Et oui il ne faut pas mélanger les torchons et les serviettes

Que sont "b" et "c" ?

Avec un fichier dans lequel tu expliques ce que tu veux faire serait un plus pour comprendre ton problème

Comment joint-on un fichier ?

sinon on peut faire sans.

Je veux que si A1 = "bonjour" alors A2 = soit "au revoir" soit "bonjour"

merci

Bonjour

Testes ceci

Sub truc()
Dim Mots() As String
  Mots = Split("au revoir,bonjour", ",")
  If Range("A1") = 1 Then Range("A2") = Mots(Int(Rnd() * 2))
End Sub

Merci de ton aide.

Ca marche parfaitement

Seulement (et ce qui est logique) dès que je clique sur une autre case; la case A2 se réactulise.

Serait-il possible que la case à A2 ne se réactulise pas tant qu'on n'est pas changer A1?

Merci de votre aide

Bonjour

Utilises cette macro évènementielle (à placer dans le module de la feuille)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Mots() As String
  If Not Intersect(Range("A1"), Target) Is Nothing Then
    Mots = Split("au revoir,bonjour", ",")
    If Target = 1 Then Range("A2") = Mots(Int(Rnd() * 2))
  End If
End Sub

Merci, tu m'a super bien aidé !!!

Super forum !!! avec des personnes prêtes à aider les moins douées

Par contre il se passe quelque chose de bizarre.

J'ai mis ce code

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

 If Not Intersect(Range("B2"), Target) Is Nothing Then
    Mots = Split("au revoir,bonjour", ",")
    If Target Like "*bonjour*" Then Range("B3") = Mots(Int(Rnd() * 2))
  End If
End Sub

Il marche sur une feuille. Je met exactement le même sur une autre feuille il me met "Erreur 13: incompatibilité de type" sur

 If Target Like "*bonjour*" Then

Merci de votre aide

Bonjour

Normalement il ne devrait pas y avoir d'erreur

Il faudrait fournir le fichier en cause (ou un semblable) en y indiquant la démarche pour arriver à l'erreur

Une question : Des cellules fusionnées ?

Oui il y à des cellules fusionnées.

Comment envoie t-on un fichier?

Bonjour

Pour envoyer un fichier

Fichier (compressé ou non) maxi 300 Ko

joindre un fichier

Fichier autre avec cjoint http://cjoint.com/index.php

c joint

Dans la macro testes

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

 If Not Intersect(Range("B2"), Target) Is Nothing Then
    Mots = Split("au revoir,bonjour", ",")
    If Target.Cells(1,1) Like "*bonjour*" Then Range("B3") = Mots(Int(Rnd() * 2))
  End If
End Sub

Merci Banzai64

Grace à toi j'ai pu résoudre un gros problème et ce en une journée

Je n'ai pas besoin d'envoyer de fichier car tu as résolu le problème

ENCORE MERCI

Rechercher des sujets similaires à "reponse choix mutiples"