Checkbox versus Textbox

cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 22 juin 2005 à 03:00
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 - 22 juin 2005 à 09:00
Salut...

J'utilise VB, ADO et ACCESS.

J'ai un problème de compréhension avec une boucle. Bon je n'utilise jamais de boucle car j'ai de la difficulté à saisir cela... enfin... Passons.... Mais je ne sais pas si le bug peux venir de la boucle.

Mon but est d'utiliser une base de données ACCESS où il y a des X dans certain ligne (La base de donnée a été tres mal monté car les individus qui l'utilise mettent un X au lieu d'avoir créé un check box dans la BD... Je dois donc vivre avec cela car la base de donnée est trop volumineuse pour corriger cette erreur une par une. C'est pourquoi je programme un prog pour tenter de régler une partie de ce problème.

Le programme est utilisé pour faire le suivi des dossiers... Je veux que s'il y a un X dans la colonne Dessinateur par exmeple et bien ca sera un checkbox coché dans mon programme. Chekcbox qui se nommera Dessin.

Donc quand je me promène dans ma BD avec mon prog VB je peux voir les colone qui on un X et je veux que si, comme comme je le mentionnais précédemment, voir un checkbox coché qui indique que le dossier est au dessinateur.

Je me suis donc créé 7 checkbox différent qui sont relier aux 7 collones de ma BD (ex. dessinateur, calcul, recherche, etc.

Premier prob, il doit qu'avoir qu'un seul checkbox de cocher (car le dossier ne peux être qu'à une place à la fois) et c'est là que j'utilise ma boucle...

Voici le code

For i = 0 To 7
If i <> Index Then
If Check1.Item(i).Value = 1 Then
Check1.Item(i).Value = 0
Exit Sub
End If
End If
Next i


Check1.Item(Index).Value = 1

Jusqu'ici ca va

Auparavant j'ai créé un code pour dire que si il y a un X dans la colonne Dessin alors cocher le checkbox Dessin... Ca aussi ca va... Voici le code

Private Sub CheckBox()


If txtAttenteTerrain.Text "x" Or txtAttenteTerrain.Text "X" Then
Check1.Item(1).Value = 1
Else
Check1.Item(1).Value = 0
End If


If txtAttenteTirroir.Text "x" Or txtAttenteTirroir.Text "X" Then
Check1.Item(2).Value = 1
Else
Check1.Item(2).Value = 0
End If


If txtRecherche.Text "x" Or txtRecherche.Text "X" Then
Check1.Item(3).Value = 1
Else
Check1.Item(3).Value = 0
End If


If txtCalcul.Text "x" Or txtCalcul.Text "X" Then
Check1.Item(0).Value = 1
Else
Check1.Item(0).Value = 0
End If


If txtDessin.Text "x" Or txtDessin.Text "X" Then
Check1.Item(6).Value = 1
Else
Check1.Item(6).Value = 0
End If


If txtRapport.Text "x" Or txtRapport.Text "X" Then
Check1.Item(5).Value = 1
Else
Check1.Item(5).Value = 0
End If


If txtYvon.Text "x" Or txtYvon.Text "X" Then
Check1.Item(4).Value = 1
Else
Check1.Item(4).Value = 0
End If

End Sub

Mais si je veux Modifier ma BD en utilisant le programme VB ca plante...

Je veux lui dire que si je mets le chekcbox au Calcul il devrait effacer le X qui était auparavant au Dessin et mettre un X dans Calcul... J'ai tenter ce code mais ca plante. c'Est qu'il n'efface pas le X et il ne fait que ,mettre un X dans Calcul... Le bug est que j'ai deux X a deux endroit différent...

If Check1.Item(0).Value = 1 Then
txtAttenteTerrain.Text = "X"
ElseIf Check1.Item(1).Value = 1 Then
txtAttenteTirroir.Text = "X"
ElseIf Check1.Item(2).Value = 1 Then
txtRecherche.Text = "X"
ElseIf Check1.Item(3).Value = 1 Then
txtCalcul.Text = "X"
ElseIf Check1.Item(4).Value = 1 Then
txtDessin.Text = "X"
ElseIf Check1.Item(5).Value = 1 Then
txtRapport.Text = "X"
ElseIf Check1.Item(6).Value = 1 Then
txtYvon.Text = "X"
ElseIf Check1.Item(7).Value = 1 Then
txtInvisible.Text = "X"

Bon je ne sais pas si je suis assez clair.... Je l'espère... Mais je suis désespérer et je ne sais plus quoi faire....

J'attends votre aide...

Merci d'avance.

1 réponse

BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
22 juin 2005 à 09:00
si j'ai tout compris...
il suffit que tu reinitialise tes textbox

txtAttenteTerrain.Text = ""
txtAttenteTirroir.Text = ""
....
If Check1.Item(0).Value = 1 Then
txtAttenteTerrain.Text = "X"
ElseIf Check1.Item(1).Value = 1 Then
txtAttenteTirroir.Text = "X"
ElseIf Check1.Item(2).Value = 1 Then
txtRecherche.Text = "X"
ElseIf Check1.Item(3).Value = 1 Then
txtCalcul.Text = "X"
ElseIf Check1.Item(4).Value = 1 Then
txtDessin.Text = "X"
ElseIf Check1.Item(5).Value = 1 Then
txtRapport.Text = "X"
ElseIf Check1.Item(6).Value = 1 Then
txtYvon.Text = "X"
ElseIf Check1.Item(7).Value = 1 Then
txtInvisible.Text = "X"

BasicInstinct
0
Rejoignez-nous