Access = fonction IF/THEN suivant textbox

HELD_tokyo Messages postés 51 Date d'inscription   Statut Membre Dernière intervention   -  
blux Messages postés 27141 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour a tous,

J'ai une petite question de code.
J'ai un formulaire de saisie qui contient un champ obligatoire = Fx
En bas de ce formulaire, j'ai un bouton sur lequel je souhaiterais affecter la fonction suivante :

Si Fx n'est pas rempli, alors ouvrir le form ERRORFX qui est un message d'erreur
Sinon
Ouvrir la requete Advanced Search

J'ai essaye ca mais ca ne marche pas...

Private Sub Search_Click()
If Forms![finder SL]![fx] = "Null" Then
DoCmd.OpenForm (Forms![errorfx]),
Else
DoCmd.OpenQuery(Queries![AdvancedSearch]), acViewNormal, acReadOnly)
End If

End Sub

Merci pour votre aide!
A voir également:

6 réponses

tarek_dotzero Messages postés 817 Date d'inscription   Statut Membre Dernière intervention   122
 
Salut,

Je ne suis pas vraiment un programmeur VBA, mais je vois que vous avez comparez avec "Null": donc la valeur de la chaine de caractère "Null", je pense que vous devez comparez avec "" (chaine vide) ou utiliser
is nothing
pour la valeur null.
0
blux Messages postés 27141 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Salut,

le test null se fait avec la fonction IsNull...

IF IsNull(pouet.value) THEN
...
0
tobec
 
Salut,

je ne sais pas si "is null" est reconnu.

essaye quelque chose comme

if fx.text = "" then
.
.
else
.
.
end if
0
blux Messages postés 27141 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
IsNull (en un seul mot) est une des nombreuses fonctions d'access...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
HELD_tokyo Messages postés 51 Date d'inscription   Statut Membre Dernière intervention   1
 
marche pas avec la syntaxe Is null...
je dois etre null aussi :)

Private Sub Search_Click()
If IsNull([Forms]![finder SL]![fx]) Then
DoCmd.OpenForm ([Forms]![errorfx])
Else
DoCmd.OpenQuery ([Queries]![AdvancedSearch]), acViewNormal, acReadOnly
End If

End Sub

Ou est l'erreur ?

Merci beaucoup

Held
0
blux Messages postés 27141 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Il faut tester quelque chose !

If IsNull([Forms]![finder SL]![fx].text) ou
If IsNull([Forms]![finder SL]![fx].value)
0
HELD_tokyo Messages postés 51 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour Blux

Dabord merci pour ton suivi.

Je viens de tester les deux fonctions et ca ne marche toujours pas.

En fait pour faire simple, j'ai un petit formulaire avec 3 criteres. En bas, un bouton pour lancer la requete associee au 3 criteres en question.

2 criteres sont des menus liste et fonctionnent tres bien. le troisieme est un champ de saisie, et ce champ est obligatoire.
je souhaite simplement rendre cette cellule obligatoire. Or dans les proprietes de ma cellule, je ne trouve pas l'option qui permet de rendre la saisie obligatoire, elle a disparue semble t-il.

Comment faire ? J'ai creer un petit message d'erreur, et jessaye d'appliquer cette formule :
sur click, si le champ de saisie est vide, alors lance le message derreur qui est un petit formulaire.
sinon, lancer la requete.

Merci pour tes lumieres!

Helder
0
blux Messages postés 27141 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
En informatique, null n'est du tout équivalent à vide. Dansn un cas, la valeur null peut vouloir dire : n'a jamais été utilisé, alors que la valeur vide peut vouloir dire : ne contient rien, ce qui est qand même différent.

As-tu testé comme l'indiquait tobec en message 3, la syntaxe :

If ([Forms]![finder SL]![fx].text) = "" ou
If ([Forms]![finder SL]![fx].value) = ""
0