Utilisation Input Box suivi d'un Msg Box

Résolu/Fermé
simon7339 Messages postés 68 Date d'inscription lundi 10 mars 2014 Statut Membre Dernière intervention 10 avril 2018 - 29 déc. 2014 à 17:30
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 30 déc. 2014 à 15:16
Bonjour à tous,

Je débute sur VBA Excel et suis en train de finir ma première macro pour mon travail. Tout s'est bien passé sauf maintenant où je bloque sur la fin.

En gros je voulais savoir s'il était possible (oui je sais tout est possible...) :

En fonction de la valeur d'une cellule :

Si la cellule est strictement supérieur à 1
==> Alors InputBox pour remplir un commentaire qui sera extrait vers un autre tableau
==> Ensuite MsgBox avec si OUI (on on ne change pas la valeur de la cellule); si NON (la valeur de la cellule sera changé en 0)

Et si la cellule inférieur ou égale à 1 : rien ne se passe

Désolé de poser la question comme ça mais là je bloque (moins facile sans l'enregistreur de Macro).

Merci d'avance pour votre aide s'il y'en a qui passe par là.

En attendant super forum, continuez comme ça ;)

Bonne soirée à tous.
A voir également:

4 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
29 déc. 2014 à 17:38
Bonjour,

Sub test()

'Si la cellule est strictement supérieur à 1
If Range("A1").Value > 1 Then

  valInput = InputBox("Saisir un commentaire", "mon titre", "valeur par defaut")
  'copie du texte dans une autre cellule:
  Range("B1").Value = valInput
  
  ' Ensuite MsgBox avec si OUI (on on ne change pas la valeur de la cellule); si NON (la valeur de la cellule sera changé en 0)
    If (MsgBox("une question...", vbYesNo) = vbYes) Then
        'on fait rien
    Else
        Range("A1").Value = 0
    End If
  

Else 'Et si la cellule inférieur ou égale à 1 : rien ne se passe
 ' et bien.. rien...
 ' le else n'est donc pas nécéssaire.. mais c'était pour que tu comprennes..
 Debug.Print "La valeur est supérieur à 1 !"
End If


End Sub

 
0
simon7339 Messages postés 68 Date d'inscription lundi 10 mars 2014 Statut Membre Dernière intervention 10 avril 2018 1
30 déc. 2014 à 14:29
Au top merci c'est exactement ce que je voulais faire.

Parfait ;)
0
simon7339 Messages postés 68 Date d'inscription lundi 10 mars 2014 Statut Membre Dernière intervention 10 avril 2018 1
30 déc. 2014 à 14:40
J'ai également un petit problème avec la fonction SI ET OU.

En faite je pense qu'il faut imbriquer les 3 mais cela donne partiellement le résultat que je veux.

En gros :

J'ai une colonne A, avec soit IN soit OUT

Une colonne B, avec soit case vide, soit chiffre (1,2 ou 3) ou soit #N/A


Je veux que le chiffre 1 soit renvoyé en C si :

-Dans cellule A1 = OUT
-Dans cellule B1 : soit un chiffre soit #N/A

J'ai donc construit la valeur comme suit :

=SI(ET(OU(B1<>"";ESTNA(B1));A1="OUT");1)

Cependant la valeur 1 est bien renvoyé quand B1 n'est pas vide mais renvoie #N/A quand B1 est #N/A

Voyez vous l'erreur que j'ai faite? Merci d'avance
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
30 déc. 2014 à 14:58
Cette question n'a rien à voir avec la précédente....

La question précédente concernait du VBA .. là .. il s'agit d'une FORMULE EXCEL....
Quoi qu'il en soit.. il est préférable de ne poser qu' UNE seule question par discussion.

Mais bon.. pour cette fois... faisons comme si ce n'était pas gênant...
Je pense que la bonne formule serait plutot :
=SI(ET(A1;SI(ESTNA(B1);1;B1<>""));1;0)
0
simon7339 Messages postés 68 Date d'inscription lundi 10 mars 2014 Statut Membre Dernière intervention 10 avril 2018 1
30 déc. 2014 à 15:15
Bon ba ça marche, merci Jordane pour tout tu m'a vraiment bien dépanné c'est cool.

Ok je prends note pour les prochaines questions.

Encore merci, bonne journée à toi
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
30 déc. 2014 à 15:16
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
0