phantom_2005
Messages postés184Date d'inscriptionmercredi 8 décembre 2004StatutMembreDernière intervention 1 septembre 2010
-
28 déc. 2004 à 14:27
phantom_2005
Messages postés184Date d'inscriptionmercredi 8 décembre 2004StatutMembreDernière intervention 1 septembre 2010
-
28 déc. 2004 à 15:55
Bonjour,
j'aimerais verrouillé un bouton si toutes les textbox du formulaire ne sont pas rempli. J'ai le code suivant mais il ne fonctionne pas.
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim ctl1 As Control
Dim vide As Integer, rempli As Integer
vide = 0
rempli = 0
For Each ctl1 In Me.Controls
If TypeName(ctl1) = "TextBox" Then
If ctl1.Value = "" Then
vide = vide + 1
Else
rempli = rempli + 1
End If
End If
Next ctl1
If (vide <> 0) Then
Btn1.Enabled = False
Else
Btn1.Enabled = True
End If
End Sub
Visiblement, il ne passe jamais par 'vide = vide + 1'.
Il ne doit pas reconnaître le "".
Quelqu'un a une idée?
Merci
:)
A voir également:
Verrouiller un Bouton en fonction du contenu des TextBox
cs_bouf
Messages postés114Date d'inscriptionlundi 6 septembre 2004StatutMembreDernière intervention20 mars 2008 28 déc. 2004 à 15:47
oui ça change tout.
Quand on dit VBA c'est Visual Basic Appliqué : appliqué à un programme comme exel, word, access... et donc limité par ce que peut faire le prog.
VB c'est un prog pour faire des prog donc non limité (ou si peu).
Ne confondez plus les deux et ce sera plus facile pour les réponses.
Ce que je t'ai envoyé fonctionne pour un proget en VB. Les conditions sous access 2000 connait pas. Apparement il veut une activation donc essai qqch comme :
apres le
For Each ctl1 In Me.Controls
met
ctl1.activate ou ctl1.setfocus
cs_bouf
Messages postés114Date d'inscriptionlundi 6 septembre 2004StatutMembreDernière intervention20 mars 2008 28 déc. 2004 à 14:45
déja ton rempli ne sert à rien : tu peux donc essayer en plus simple :
For Each ctl1 In Me.ControlsIf TypeName(ctl1) "TextBox" and ctl1.Value "" or null Then vide = vide+1
Next ctl1
cs_bouf
Messages postés114Date d'inscriptionlundi 6 septembre 2004StatutMembreDernière intervention20 mars 2008 28 déc. 2004 à 15:25
re,
voila j'ai essayé et ça marche :
Dim ctl1 As Control
Dim vide, rempli As Integer
vide = 0
rempli = 0
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
For Each ctl1 In Me.Controls
If TypeName(ctl1) = "TextBox" Then
If ctl1.Text = "" Then
vide = vide + 1
Else
rempli = rempli + 1
End If
End If
Next ctl1If vide 0 Then Command1.Visible True Else Command1.Visible = False
end sub