desactiver croix dans inputbox

janus51

XLDnaute Nouveau
bonjour ,

comment désactiver la croix d'un input box ou comment empecher la fermeture de l'inputbox par la croix

merci de vos réponses
janus
 
G

Guest

Guest
Re : desactiver croix dans inputbox

bonjour Janus,

Si le but est d'empêcher l'utilisateur de renvoyer une valeur nulle, tu peux faire quelque chose comme ceci:

Code:
    Dim rep As String
    Do While rep = ""
        rep = InputBox("Entrez une valeur")
    Loop

Tant que l'utilisateur n'a pas rentré une valeur la boîte est affichée.

bonsoir
 

janus51

XLDnaute Nouveau
Re : desactiver croix dans inputbox

merci de la réponse mais ça ne fct pas dans mon cas; c'est un nb que je dois rentrer dans l'input box , et mon programme ne fct que si dim rep as long.
par ailleurs meme si l'utilisteur rentre un nombre dans l'input , je veux empecher qu'il clique sur la croix
 
G

Guest

Guest
Re : desactiver croix dans inputbox

Re bonjour Janus,

Alors le plus simple est de créer un userform personnalisé et d'utiliser son évènement QueryClose comme ceci:

Code:
Private Sub Userform_QueryClose(Cancel As Integer, CloseMode As Integer)
      If CloseMode = vbFormControlMenu Then Cancel = True
End Sub

A bientôt
 

myDearFriend!

XLDnaute Barbatruc
Re : desactiver croix dans inputbox

Bonsoir janus51, Hasco, le Forum,

Si tu veux pouvoir contrôler facilement le type de données saisi dans une InputBox (numérique dans ton cas), il est souvent plus simple d'utiliser non pas la fonction InputBox, mais la méthode du même nom :
Code:
[COLOR=NAVY]Dim[/COLOR] Rep [COLOR=NAVY]As Variant
    Do[/COLOR]
        Rep = Application.InputBox("Entrez un nombre", [COLOR=NAVY]Type[/COLOR]:=1)
    [COLOR=NAVY]Loop Until Not[/COLOR] VarType(Rep) = vbBoolean
Type=1 pour les nombres.

Et si tu veux absolument que la variable Rep soit de type Long :
Code:
[COLOR=NAVY]Dim[/COLOR] R [COLOR=NAVY]As Variant
Dim[/COLOR] Rep [COLOR=NAVY]As Long
    Do[/COLOR]
        R = Application.InputBox("Entrez un nombre", [COLOR=NAVY]Type[/COLOR]:=1)
    [COLOR=NAVY]Loop Until Not[/COLOR] VarType(R) = vbBoolean
    Rep = R
Cordialement,
 

Discussions similaires

Statistiques des forums

Discussions
311 723
Messages
2 081 932
Membres
101 844
dernier inscrit
pktla