controle d'inputbox

guevain

XLDnaute Junior
bonjour a tous ,

je souhaiterai contrôler une valeur saisie dans un inputbox a partir d'une liste présente dans le classeur.

après de vaines recherches sur les différent forum , je m'en remet encore a vous.

merci d'avance a ceux qui se pencheront sur mon cas
 

guevain

XLDnaute Junior
Re : controle d'inputbox

bonjour job75 ,

la liste contient des chiffres,des lettres et des tirets.

je suis sur le meme fichier que la fameuse BDD pour la listebox.

en fait je voudrait que lorsque l'on saisie un valeur dans l'inputbox , il y ai un controle qui se fait dans une liste afin d'etre sur que la reference saisie existe (pour ne pas planter les autre macro)

input box lié au bouton 'consulter une mallettes' et controle dans la Feuil4 ,colonne A

merci d'avance
 

job75

XLDnaute Barbatruc
Re : controle d'inputbox

Re,

Il s'agit donc d'une liste de textes, alors utiliser par exemple :

Code:
Dim t$, i As Variant
1 t = InputBox("Entrez... quelque chose...")
If t = "" Then Exit Sub
With Feuil4 'CodeName
  i = Application.Match(t, .Range("A2:A" & .Rows.Count), 0)
End With
If IsError(i) Then GoTo 1
'---suite---
A+
 

guevain

XLDnaute Junior
Re : controle d'inputbox

re

je viens d'essayer de coller le code et cela ne fonctionne pas , meme si je saisie une valeur qui n'est pas dans la liste ,la macro continu , je voudrais qu'en cas d'erreur ca declenche un msgbox et qu'a la fermeture de celui ci se soit l'inputbox qui reste a l'ecran
 

job75

XLDnaute Barbatruc
Re : controle d'inputbox

Re guevain, salut Pierrot :)

Bah faut tout vous faire... Bien sûr que ça fonctionne, et si l'on veut un message :

Code:
Dim t$, i As Variant
1 t = InputBox("Entrez... quelque chose...")
If t = "" Then Exit Sub
With Feuil4 'CodeName
  i = Application.Match(t, .Range("A2:A" & .Rows.Count), 0)
End With
If IsError(i) Then MsgBox "Recommencez...": GoTo 1
 '---suite---

Edit : oui Pierrot, avec ta variable m on évite la MsgBox :)

A+
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : controle d'inputbox

Re,

une variante pour le message :
Code:
Dim t$, i As Variant, m As String
m = "Entrez... quelque chose..."
1 t = InputBox(m)
If t = "" Then Exit Sub
With Feuil1 'CodeName
  i = Application.Match(t, .Range("A2:A" & .Rows.Count), 0)
End With
If IsError(i) Then m = "Saisie précédente invalide...": GoTo 1
 

guevain

XLDnaute Junior
Re : controle d'inputbox

re Job et bonjour pierrot

merci ,en effet ça marche et j'ai bien le msg.

il faut que je fasse des tests sur différent type d'erreur de saisie, mais en attendant merci encore.

Job, je ne sait pas pourquoi ça n'a pas marcher la première fois , j'ai pourtant fait un copier/coller ?????
 

Discussions similaires

Statistiques des forums

Discussions
312 674
Messages
2 090 786
Membres
104 664
dernier inscrit
jth