Probléme Access
Baron
-
blux Messages postés 1969 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 1969 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je travaille avec Access et j'ai une Base de données avec des formulaires, lors de la creation d'un enregistrement j'ai crée un bouton avec un code, avant d'ajouter l'enregistrement je vérifie qu'il n'est pas déjà dans la table, pour cela je récupére les données du formulaire et ouvre un recordset, j'ai fait une condition If pour voir l'égalité eti incremente une variable, ensuite avec un if je regarde la valeur de ma varaible (si 0, creer l'enregistrement). Mon probléme arrive au moment de l'égalité, Access à bien toute les valeurs elles sont identique mais ne veut pas rentrer dans le If, il va directement à la procédure suivante. Pouvez vous m'aider SVP
Voici le bout de code concernant l'égalité:
If Not IsNull(Forms![Creation]!Texte3) Then
Q = Forms![Creation]!Texte3
Else: Q = ""
End If
If Not IsNull(Forms![Creation]!Texte5) Then
DC = Forms![Creation]!Texte5
Else: DC = ""
End If
If Not IsNull(Forms![Creation]!Texte11) Then
CD = Forms![Creation]!Texte11
Else: CD = ""
End If
If Not IsNull(Forms![Creation]!Texte13) Then
Ch = Forms![Creation]!Texte13
Else: Ch = ""
End If
If Not IsNull(LS = Forms![Creation]!Texte15) Then
LS = Forms![Creation]!Texte15
Else: LS = ""
End If
If Not IsNull(Forms![Creation]!Texte19) Then
VAR = Forms![Creation]!Texte19
Else: VAR = ""
End If
If Not IsNull(Forms![Creation]!Texte21) Then
CC = Forms![Creation]!Texte21
Else: CC = ""
End If
If Not IsNull(Forms![Creation]!Texte24) Then
Cl = Forms![Creation]!Texte24
Else: Cl = ""
End If
If Not IsNull(Forms![Creation]!Texte34) Then
NFS = Forms![Creation]!Texte34
Else: NFS = ""
End If
If Not IsNull(Forms![Creation]!Texte36) Then
BA = Forms![Creation]!Texte36
Else: BA = ""
End If
If Not IsNull(Forms![Creation]!Liste40) Then
Remarque = Forms![Creation]!Liste40
Else: Remarque = ""
End If
If Not IsNull(Forms![Creation]!Texte32) Then
DR = Forms![Creation]!Texte32
Else: DR = ""
End If
If Not IsNull(Forms![Creation]!Liste9) Then
SEC = Forms![Creation]!Liste9
Else: SEC = ""
End If
If Not IsNull(Forms![Creation]!CENTRE) Then
C = Forms![Creation]!CENTRE
Else: C = ""
End If
If Not IsNull(Forms![Creation]!Liste17) Then
TV = Forms![Creation]!Liste17
Else: TV = ""
End If
'Requete de Vérification
Set rsd = db.OpenRecordset("Table1")
rsd.MoveFirst
While Not rsd.EOF
If rsd!QUI = Q And rsd!DATE_COORDINATION = DC And rsd!CODE_D = CD And rsd!CHF = Ch And rsd!LIBELLE_SITE = LS And rsd!VAR_P2 = VAR And rsd!CHARGE_CLIENT = CC And rsd!CLIENT = Cl And rsd!N_F_SYNTHESE = NFS And rsd!BAPC = BA And rsd!Remarque = Remarque And rsd!Date_resiliation = DR And rsd!Secteur = SEC And rsd!CENTRE = C And rsd!Type_variation = TV Then
T = T + 1
End If
rsd.MoveNext
Wend
Merci de votre aide
Je travaille avec Access et j'ai une Base de données avec des formulaires, lors de la creation d'un enregistrement j'ai crée un bouton avec un code, avant d'ajouter l'enregistrement je vérifie qu'il n'est pas déjà dans la table, pour cela je récupére les données du formulaire et ouvre un recordset, j'ai fait une condition If pour voir l'égalité eti incremente une variable, ensuite avec un if je regarde la valeur de ma varaible (si 0, creer l'enregistrement). Mon probléme arrive au moment de l'égalité, Access à bien toute les valeurs elles sont identique mais ne veut pas rentrer dans le If, il va directement à la procédure suivante. Pouvez vous m'aider SVP
Voici le bout de code concernant l'égalité:
If Not IsNull(Forms![Creation]!Texte3) Then
Q = Forms![Creation]!Texte3
Else: Q = ""
End If
If Not IsNull(Forms![Creation]!Texte5) Then
DC = Forms![Creation]!Texte5
Else: DC = ""
End If
If Not IsNull(Forms![Creation]!Texte11) Then
CD = Forms![Creation]!Texte11
Else: CD = ""
End If
If Not IsNull(Forms![Creation]!Texte13) Then
Ch = Forms![Creation]!Texte13
Else: Ch = ""
End If
If Not IsNull(LS = Forms![Creation]!Texte15) Then
LS = Forms![Creation]!Texte15
Else: LS = ""
End If
If Not IsNull(Forms![Creation]!Texte19) Then
VAR = Forms![Creation]!Texte19
Else: VAR = ""
End If
If Not IsNull(Forms![Creation]!Texte21) Then
CC = Forms![Creation]!Texte21
Else: CC = ""
End If
If Not IsNull(Forms![Creation]!Texte24) Then
Cl = Forms![Creation]!Texte24
Else: Cl = ""
End If
If Not IsNull(Forms![Creation]!Texte34) Then
NFS = Forms![Creation]!Texte34
Else: NFS = ""
End If
If Not IsNull(Forms![Creation]!Texte36) Then
BA = Forms![Creation]!Texte36
Else: BA = ""
End If
If Not IsNull(Forms![Creation]!Liste40) Then
Remarque = Forms![Creation]!Liste40
Else: Remarque = ""
End If
If Not IsNull(Forms![Creation]!Texte32) Then
DR = Forms![Creation]!Texte32
Else: DR = ""
End If
If Not IsNull(Forms![Creation]!Liste9) Then
SEC = Forms![Creation]!Liste9
Else: SEC = ""
End If
If Not IsNull(Forms![Creation]!CENTRE) Then
C = Forms![Creation]!CENTRE
Else: C = ""
End If
If Not IsNull(Forms![Creation]!Liste17) Then
TV = Forms![Creation]!Liste17
Else: TV = ""
End If
'Requete de Vérification
Set rsd = db.OpenRecordset("Table1")
rsd.MoveFirst
While Not rsd.EOF
If rsd!QUI = Q And rsd!DATE_COORDINATION = DC And rsd!CODE_D = CD And rsd!CHF = Ch And rsd!LIBELLE_SITE = LS And rsd!VAR_P2 = VAR And rsd!CHARGE_CLIENT = CC And rsd!CLIENT = Cl And rsd!N_F_SYNTHESE = NFS And rsd!BAPC = BA And rsd!Remarque = Remarque And rsd!Date_resiliation = DR And rsd!Secteur = SEC And rsd!CENTRE = C And rsd!Type_variation = TV Then
T = T + 1
End If
rsd.MoveNext
Wend
Merci de votre aide
2 réponses
Salut,
as-tu regardé ce qu'il y avait dans tes valeurs Q, CD... ?
Il est possible qu'il faille les remplir avec Forms![Creation]!TexteXXXX.Value
as-tu regardé ce qu'il y avait dans tes valeurs Q, CD... ?
Il est possible qu'il faille les remplir avec Forms![Creation]!TexteXXXX.Value
le teste if
If rsd!QUI = Q And rsd!DATE_COORDINATION = DC And rsd!CODE_D = CD And rsd!CHF = Ch And rsd!LIBELLE_SITE = LS And rsd!VAR_P2 = VAR And rsd!CHARGE_CLIENT = CC And rsd!CLIENT = Cl And rsd!N_F_SYNTHESE = NFS And rsd!BAPC = BA And rsd!Remarque = Remarque And rsd!Date_resiliation = DR And rsd!Secteur = SEC And rsd!CENTRE = C And rsd!Type_variation = TV
présente des combremant
faite le if imbriquer et moins = dans les conditions
If rsd!QUI = Q And rsd!DATE_COORDINATION = DC And rsd!CODE_D = CD And rsd!CHF = Ch And rsd!LIBELLE_SITE = LS And rsd!VAR_P2 = VAR And rsd!CHARGE_CLIENT = CC And rsd!CLIENT = Cl And rsd!N_F_SYNTHESE = NFS And rsd!BAPC = BA And rsd!Remarque = Remarque And rsd!Date_resiliation = DR And rsd!Secteur = SEC And rsd!CENTRE = C And rsd!Type_variation = TV
présente des combremant
faite le if imbriquer et moins = dans les conditions