Vba parcourir table
muman
-
Jean_Jacques -
Jean_Jacques -
Bonjour,
voila je fais une base access dans laquelle l'utilisateur entre un code projet dans un formulaire que j'ai créé.
j'ai donc une table qui contient tous les codes projets enregistrés;
mon problème est tout simple, je ne veut pas de doublon;
Ainsi je cherche le code vba qui permettrait, lorsque l'utilisateur entre un code projet de chercher dans ma table s'il existe déjà ou pas ; et dans le cas ou le code projet existe déjà je voudrais faire afficher un petit message d'erreur du style "ce projet existe déja" .
j'ai bien essayé un code de ce type
If code_projet.Value = ma_tab.code_projet.Value Then MsgBox "le projet existe déjà"
mais j'ai une erreur du genre "objet requis"
ou un truk kom ça.
Si quelqu'un peut m'aider merci d'avance.
voila je fais une base access dans laquelle l'utilisateur entre un code projet dans un formulaire que j'ai créé.
j'ai donc une table qui contient tous les codes projets enregistrés;
mon problème est tout simple, je ne veut pas de doublon;
Ainsi je cherche le code vba qui permettrait, lorsque l'utilisateur entre un code projet de chercher dans ma table s'il existe déjà ou pas ; et dans le cas ou le code projet existe déjà je voudrais faire afficher un petit message d'erreur du style "ce projet existe déja" .
j'ai bien essayé un code de ce type
If code_projet.Value = ma_tab.code_projet.Value Then MsgBox "le projet existe déjà"
mais j'ai une erreur du genre "objet requis"
ou un truk kom ça.
Si quelqu'un peut m'aider merci d'avance.
A voir également:
- Vba parcourir table
- Table ascii - Guide
- Table des matières word - Guide
- Table des caractères - Guide
- L'indice n'appartient pas à la sélection vba - Forum VB / VBA
- Incompatibilité de type vba ✓ - Forum Programmation
3 réponses
Salut,
tu dois combiner la fonction dlookup avec un test de nullité, genre :
A+ Blux
tu dois combiner la fonction dlookup avec un test de nullité, genre :
If not isnull(dlookup("nom_du_champ_de_la_table","nom_de_la_table","nom_du_champ_de_la_table = " & zone_de_saisie_code_projet.value) then msgbox zone_de_saisie_code_projet.value & " existe déjà",vbCritical,"erreur" end if
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
merci c cool c bien la commande que je cherchais;
par contre j'ai pas encore réussi . quand j'entre un code projet qui existe déjà dans ma table même avec ce code ça enregistre kan meme et aucun message d'erreur ne s'affiche.
j'ai essayé plusieurs codes mais aucun ne marche:
If (DLookup("[code projet]", "tab_portefeuille", "[code projet] = Forms![CreerProjet]![code_projet].Value ")) Then
MsgBox code_projet.Value & " existe déjà", vbCritical, "erreur"
End If
(je n'ai pas fais le test pr la valeur nulle pck j'en ai pas besoin)
par contre j'ai pas encore réussi . quand j'entre un code projet qui existe déjà dans ma table même avec ce code ça enregistre kan meme et aucun message d'erreur ne s'affiche.
j'ai essayé plusieurs codes mais aucun ne marche:
If (DLookup("[code projet]", "tab_portefeuille", "[code projet] = Forms![CreerProjet]![code_projet].Value ")) Then
MsgBox code_projet.Value & " existe déjà", vbCritical, "erreur"
End If
(je n'ai pas fais le test pr la valeur nulle pck j'en ai pas besoin)
Bonjour Muman,
Ci-joint, à télécharger, une variante possible, mais il faut l'adapter à votre cas.
Il s'agit du Formulaire F_Saisiie facuture
En saisissant, dans le champ de saisie : "ZORROB"
Un message d'alerte vous informe que la facture est déjà connue.
Si j'ai bien compris, vous souhaitez, au contraire, une alerte pour un enregistrement inexistant.
Je vous laisse le plaisir d'inverser les conditions du code ...
https://www.cjoint.com/?0lmlSDKZdkV
Ci-joint, à télécharger, une variante possible, mais il faut l'adapter à votre cas.
Il s'agit du Formulaire F_Saisiie facuture
En saisissant, dans le champ de saisie : "ZORROB"
Un message d'alerte vous informe que la facture est déjà connue.
Si j'ai bien compris, vous souhaitez, au contraire, une alerte pour un enregistrement inexistant.
Je vous laisse le plaisir d'inverser les conditions du code ...
https://www.cjoint.com/?0lmlSDKZdkV