[Access]Problème avec une condition If
Akabane
-
Akabane -
Akabane -
Bonjour,
J'ai un petit problème en Access. Voila j'ai réalisé un formulaire afin d'enregistrer un nouveau centre qui est définit par les propriétés
Nom_Centre
Groupement
Statut
Type_Centre
Effectif_Total
Effectif_Volontaire
Effectif_Garde
Effecti_Abstrainte
Num_Categorie
Le formulaire permet de selectionner un groupement parmis la liste des groupement disponible de meme pour le statut ainsi que le Type de centre. Néanmoins si le groupent n'est pas dans la liste, j'ai crée un champ à coté ou on peut écrire son groupement précis. Et c'est la qu'il ya un problème je vous envois mon code VB
Si quelqu'un pouvait me dire ce qui ne va pas ca me rendrait très heureux, et mon clavier serait heureux de ne plus se manger des coups de poings ravageurs ....... ^^
J'ai un petit problème en Access. Voila j'ai réalisé un formulaire afin d'enregistrer un nouveau centre qui est définit par les propriétés
Nom_Centre
Groupement
Statut
Type_Centre
Effectif_Total
Effectif_Volontaire
Effectif_Garde
Effecti_Abstrainte
Num_Categorie
Le formulaire permet de selectionner un groupement parmis la liste des groupement disponible de meme pour le statut ainsi que le Type de centre. Néanmoins si le groupent n'est pas dans la liste, j'ai crée un champ à coté ou on peut écrire son groupement précis. Et c'est la qu'il ya un problème je vous envois mon code VB
Private Sub ValiderNewCentre_Click()
Dim BD As Database
Dim req As String
Set BD = CurrentDb
req = "insert into Centre (Nom_Centre, Groupement, Statut, Type_Centre, Effectif_Total, Effectif_Volontaire, Effectif_Garde, Effectif_Abstrainte, Num_Categorie) values("
Nom_Centre.SetFocus
req = req & "'" & Nom_Centre.Text & "'" & ", "
Groupement.SetFocus
req = req & "'" & Groupement.Value & "'" & ", "
If (Groupement.Value = "") Then
NewGroupement.SetFocus
req = req & "'" & NewGroupement.Text & "'" & ", "
End If
Statut.SetFocus
req = req & "'" & Statut.Value & "'" & ", "
If (Statut.Value = "") Then
NewStatut.SetFocus
req = req & "'" & NewStatut.Text & "'" & ", "
End If
Type_Centre.SetFocus
req = req & "'" & Type_Centre.Value & "'" & ", "
If (Type_Centre.Value = "") Then
NewType_Centre.SetFocus
req = req & "'" & NewType_Centre.Text & "'" & ", "
End If
Effectif_Total.SetFocus
req = req & "'" & Effectif_Total.Text & "'" & ", "
Effectif_Volontaire.SetFocus
req = req & "'" & Effectif_Volontaire.Text & "'" & ", "
Effectif_Garde.SetFocus
req = req & "'" & Effectif_Garde.Text & "'" & ", "
Effectif_Abstrainte.SetFocus
req = req & "'" & Effectif_Abstrainte.Text & "'" & ", "
Num_Categorie.SetFocus
req = req & "'" & Num_Categorie.Value & "'" & "); "
BD.Execute req
DoCmd.Close
DoCmd.OpenForm ("FormulairePrincipaleConsultationTtLesCentres")
End Sub
Si quelqu'un pouvait me dire ce qui ne va pas ca me rendrait très heureux, et mon clavier serait heureux de ne plus se manger des coups de poings ravageurs ....... ^^
A voir également:
- [Access]Problème avec une condition If
- Excel cellule couleur si condition texte - Guide
- Access appdata - Guide
- Acer quick access - Forum logiciel systeme
- Désinstaller ACER QUICK ACCESS - Forum Logiciels
- Excel colorer une cellule sous condition d'une autre cellule ✓ - Forum Excel
4 réponses
Salut,
si tu commençais pas nous dire OU est l'erreur (avec son type)...
On pourrait avancer plus vite... ;-)
si tu commençais pas nous dire OU est l'erreur (avec son type)...
On pourrait avancer plus vite... ;-)
Le problème c'est justement qu'il n'y a pas d'erreur. C'est juste que dans la base ya rien d'ecrit dans les propriétés groupement statut et type_centre si je remplis le champ manuellement. Par contre si je choisis dans la liste alors la oui ca remplit comme il faut ..
Cordialement
Cordialement
Dans 99% des cas, c'est la syntaxe du SQL qui est incorrecte...
Colle un msgbox avant l'exécution de la requête et tu verras si elle est formatée correctement.
Erreurs courantes :
- des doubles-quotes (") dans une valeur qui interfèrent avec le séparateur utilisé pour construire le texte de la requête
- des valeurs numériques entre quotes (Num_Categorie.Value ?)
- oubli d'un espace
Colle un msgbox avant l'exécution de la requête et tu verras si elle est formatée correctement.
Erreurs courantes :
- des doubles-quotes (") dans une valeur qui interfèrent avec le séparateur utilisé pour construire le texte de la requête
- des valeurs numériques entre quotes (Num_Categorie.Value ?)
- oubli d'un espace
Bon j'ai résolu mon problème en modifiant l'ordre de mes tests.
Private Sub ValiderNewCentre_Click()
Dim BD As Database
Dim req As String
Dim Cancel As Integer
Set BD = CurrentDb
req = "insert into Centre (Nom_Centre, Groupement, Statut, Type_Centre, Effectif_Total, Effectif_Volontaire, Effectif_Garde, Effectif_Abstrainte, Num_Categorie) values("
Nom_Centre.SetFocus
req = req & "'" & Nom_Centre.Text & "'" & ", "
NewGroupement.SetFocus
If (NewGroupement.Text = "") Then
Groupement.SetFocus
req = req & "'" & Groupement.Value & "'" & ", "
Else: req = req & "'" & NewGroupement.Text & "'" & ", "
End If
NewStatut.SetFocus
If (NewStatut.Text = "") Then
Statut.SetFocus
req = req & "'" & Statut.Value & "'" & ", "
Else: req = req & "'" & NewStatut.Text & "'" & ", "
End If
NewType_Centre.SetFocus
If (NewType_Centre.Text = "") Then
Type_Centre.SetFocus
req = req & "'" & Type_Centre.Value & "'" & ", "
Else: req = req & "'" & NewType_Centre.Text & "'" & ", "
End If
Effectif_Total.SetFocus
req = req & "'" & Effectif_Total.Text & "'" & ", "
Effectif_Volontaire.SetFocus
req = req & "'" & Effectif_Volontaire.Text & "'" & ", "
Effectif_Garde.SetFocus
req = req & "'" & Effectif_Garde.Text & "'" & ", "
Effectif_Abstrainte.SetFocus
req = req & "'" & Effectif_Abstrainte.Text & "'" & ", "
Num_Categorie.SetFocus
req = req & "'" & Num_Categorie.Value & "'" & "); "
If MsgBox("Voulez-vous confirmer la modification", vbQuestion + vbYesNo, "CONFIRMATION") = vbNo Then
Me.Undo
Cancel = True
Else: BD.Execute req
End If
DoCmd.Close
DoCmd.OpenForm ("FormulairePrincipaleConsultationTtLesCentres")
End Sub