Textbox et cell range

Bonjour à tous !

Je vais d'abord présenter le cadre de mon problème

J'ai créer un userform dans lequel il y a 3 textboxes et une macro.

textbox1 est une cellule et les deux autres textboxes sont des nombres qui peuvent être a virgule .

quel serait le code pour traduire :

Si "textbox1"(par exemple F20) est compris enre textbox2 et textbox3 alors activé macro1 ?

ps: les valeurs de la feuille changent à chaque actualisation des données

J'ai essayé le code suivant: (je précise je suis nul )

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("UserForm1.TextBox1.text").Value > UserForm1.TextBox2.text & Range("UserForm1.TextBox1.text").Value < UserForm1.TextBox3.text  Then 
Application.Run "test.xlsm!Macro1"
End Sub

Mai cela ne fonctionne pas. Je pense que ma bidouille Range("UserForm1.TextBox1.text").Value est incorrecte.

Quelqu'un aurait il une idée?

Merci beaucoup en espérant avoir été assez clair.

Bonne journée

Bonjour,

Ton code n'a rien à faire dans une évènementielle Worksheet_Change.

C'est la valeur de TextBox1 qui la référence de cellule, donc pas de guillemets.

Il faudra s'assurer que les valeurs de TextBox2 et TextBox3 soient bien interprétés comme nombres, et le cas échéant les convertir...

Si Macro1 est dans le même classeur, tu l'appelles en écrivant tout simplement : Macro1.

La procédure est à lancer à partir du Userform [bouton de validation ?] (ou éventuellement de la procédure qui a appelé le Userform, mais dans ce cas avant de le décharger, après l'avoir simplement marqué).

Si la procédure est lancé à partir du Userform, l'indication Userform1 est inutile...

Bref, il vaudrait mieux que tu mettes ton classeur pour qu'on puisse voir tous les détails !

Cordialement.

Bonjour

Un essai à tester. Te convient-il ?

Bye !

68classeur1-v1.xlsm (15.62 Ko)

Merci de vos réponses

MFerrand

J avais utilisé Private Sub Worksheet_Change(ByVal Target As Range) parce que j ai fais une requête web qui va chercher un tableau sur le net et copie les données dans la feuille (cette requête est faite toutes les 2 secondes)

Par exemple en A1 (choisie par la textbox1) la cellule est vide, je lance ma requête qui boucle, et a un moment donné cette cellule va se remplir (parce que le site a été mis a jour) . et mon programme va alors comparer cette valeur aux deux autres textboxes puis lancer la macro.

quelle évènementielle dois-je choisir? dsl je préfère garder mon projet secret 8)

Ps: k ai enlevé les guillemets et ça marche

Gmb

Merci, votre code va m être utile par la suite.

Ce n'est pas très clair, mais cela te regarde... Dans le cadre de ce que tu décris, c'est alors la présence d'un userform qui ne semble pas avoir de raisons d'être.

Bonjour,

al78310 a écrit :

quelle évènementielle dois-je choisir? dsl je préfère garder mon projet secret 8)

utilise Worksheet_Calculate

Rechercher des sujets similaires à "textbox range"