Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Plusieurs critères dans un DCount ?

249 views
Skip to first unread message

Sonia

unread,
Jan 19, 2003, 2:37:53 PM1/19/03
to
Bonsoir à tous,

Je voudrais dans du code VB pouvoir vérifier la présence d'un
enregistrement selon deux critères... Mais il semble que l'on ne
puisse chercher que sur un seul critère donné... je voudrais qu'Access
compte les enregistrements
1) portant la même réf. que le formulaire en cours(lien),
2) dont le champ Nom contient telle partie de texte

Obligation de passer par un recordset ? ou bien est seulement que ne
ne maîtrise pas bien la syntaxe DCount...?
Merci par avance,
SONIA

ad...@slyzen.com

unread,
Jan 19, 2003, 2:49:52 PM1/19/03
to
Salut Sonia,

normalement cela doit être possible :

Nbr = Dcount("TonChamp", "TaTable", "RéfTable = " &
Me.RéfTable & " And Nom = " & TonTexte)

voili, bonne soirée :o)


>-----Message d'origine-----

>.
>

Raymond

unread,
Jan 19, 2003, 3:48:54 PM1/19/03
to
Bonsoir.
Je modifierais ta fonction comme ceci:

Nbr = Dcount("TonChamp", "TaTable", "RéfTable = '" & Me.RéfTable & "' And
Nom = '" & TonTexte & "'")
Car les données sont alphanumériques. si numérique pas besoin de '

--
@+
Raymond
http://perso.wanadoo.fr/seneque/access/


<ad...@slyzen.com> a écrit dans le message de news:
034f01c2bff3$ee9deac0$89f82ecf@TK2MSFTNGXA01...

3stone

unread,
Jan 19, 2003, 6:08:29 PM1/19/03
to

et comme sonia a dit:
« 2) dont le champ Nom contient telle partie de texte »

je remodifierais encore ceci :

Nbr = Dcount("TonChamp", "TaTable", "RéfTable = '" & Me.RéfTable & "' And Nom = '*" & TonTexte &
"*'")

;-))

Raymond


> Je modifierais ta fonction comme ceci:

3stone

unread,
Jan 19, 2003, 6:40:54 PM1/19/03
to

Salut raymond,

Raymond
> Et puis qu'est-ce qu'elle aura à faire Sonia si ell a toutes les réponses ?

ben... elle remonterait les bretelles à Pierre CFI


;-)))


Bonne nuit !

Raymond

unread,
Jan 19, 2003, 6:31:34 PM1/19/03
to

Bonsoir.
personne n'est parfait !

Et puis qu'est-ce qu'elle aura à faire Sonia si ell a toutes les réponses ?
Bonne nuit .


"3stone" <skynet.be@3stone> a écrit dans le message de news:
eDnLm9AwCHA.440@TK2MSFTNGP12...

François Dej

unread,
Jan 20, 2003, 12:32:20 PM1/20/03
to
Salut,

non, tu ne te trompes pas, il est tout à fait possible
de créer plusieurs critères pour un Dcount .. travaille
comment en SQL,avec "(" et "'" et AND/OR et tout et tout

Genre
Dcount("[ClientID]";""tblclient";(("[CatégorieClient]="
& '5') AND ("[NomClient]='" & "N*" & "'"))

A toi de jouer avec la ponctuation .. en fonction de tes
recherches sur châines de caractères ou numériques ..

Euh, si j'a pas été clair, n'hésites pas (je fatigue ;-) )

Aplitar

François Dej
[exe] Soft Solutions
>-----Message d'origine-----

>.
>

Sonia

unread,
Jan 20, 2003, 3:04:56 PM1/20/03
to
D'abord merci à tous pour vos réponses ;o)

Hélas Raymond et 3Pierre j'aimerais bien n'avoir qu'à "remonter les
bretelles à Stone CFI"... euh ! ;o)
Hélas, hélas, c'est pas gagné : la formule proposée par 3Stone me fait
un joli petit Bug :

A = DCount("refFichier", "InvTTX", "RefFonds = '" & Me.RefFonds & "'
And Nom = '*" & Intro & "*'")
... déclare le texte Intro, comme variable non définie !(sic)

J'ai retrituré le truc dans tous les sens... sans succès, donc en
désespoir de cause, j'ai fini par me résoudre à cibler sur les valeurs
probables et j'ai écris :

A = DCount("refFichier", "InvTTX", "RefFonds =
Forms![FmrFondsTraitement]![RefFonds] And ([nom]='intro' or [Nom]=
'introduction')")

... qui fonctionne... à défaut de mieux...
Les autres propositions pour faire marcher le "contient texte" dans
DCount seront bien sûr les bienvenues...

Cordialement à tous :o)
SONIA

3stone

unread,
Jan 20, 2003, 3:38:54 PM1/20/03
to

Bonjour Sonia,

Sonia


> Hélas, hélas, c'est pas gagné : la formule proposée par 3Stone me fait
> un joli petit Bug :
>
> A = DCount("refFichier", "InvTTX", "RefFonds = '" & Me.RefFonds & "'
> And Nom = '*" & Intro & "*'")
> ... déclare le texte Intro, comme variable non définie !(sic)
>
> J'ai retrituré le truc dans tous les sens...

> A = DCount("refFichier", "InvTTX", "RefFonds =
> Forms![FmrFondsTraitement]![RefFonds] And ([nom]='intro' or [Nom]=
> 'introduction')")
> ... qui fonctionne... à défaut de mieux...

Je pense que ce n'est pas "la formule" qui beugue...
mais plutôt le fait d'utiliser des noms de champs "déconseillés"...

Si tu utilise ceci : ... AND Nom = trucmuche

Accèss se paye un mal de tête frénétique...
Nom étant une propriété du champ (Name en anglais...)

dans ce cas, tu peux le contourner en écrivant : ... AND ![Nom] = trucmuche

de cette facon, access comprend que tu désigne un champ.

Mais le meilleur conseil est de ne pas utiliser des noms "réservés".
En plus, si la base devient un peu conséquente, tu ne t'y retrouvera plus...

Avec des [Nom] de clients, des [Nom] d'articles, des [Nom] de fournisseurs,
des [Nom] d'employés... et des [Nom]... oui mais non ;-)

--
A+
Pierre (3stone)
--------------------------------


Daniel Carollo

unread,
Jan 20, 2003, 11:41:36 PM1/20/03
to

Bonjour Sonia!

Juste un petit detail, si vous utilisez les jokers, il faut alors utiliser
l'operateur "LIKE". Par exemple:
Mot = "Intro" ou Mot LIKE "*intro*"

Bonne continuation.

Daniel :-)

"Sonia" <s.ga...@noos.fr> wrote in message
news:a19e035a.03012...@posting.google.com...

Sonia

unread,
Jan 21, 2003, 2:17:44 AM1/21/03
to

Merci Daniel, merci 3Stone :o)

Résultat des courses :
Si j'écris :
- And ![Nom] = '*" & intro & "*'")
...toujours le meme commentaire d'Access (intro : Variable
non définie)

Avec :
- And ![Nom] like '*" & intro & "*'")
ou :
- And ![Nom] like "*intro*"")

Idem...

... et si on laissait tomber ? ;o)
SONIA


>-----Message d'origine-----

>.
>

Jessy Sempere

unread,
Jan 21, 2003, 3:11:34 AM1/21/03
to
Bonjour

"Sonia" :

> Résultat des courses :
> Si j'écris :
> - And ![Nom] = '*" & intro & "*'")
> ...toujours le meme commentaire d'Access (intro : Variable
> non définie)

Je n'ai pas tout suivi, mais "Intro", c'est quoi :
- C'est le nom de ta variable ??
- Ou c'est la valeur que tu cherches ???

> ... et si on laissait tomber ? ;o)
> SONIA

Ben non il faut toujours insister...

@+
--------------------------------------------
Jessy Sempere
Délégation Infra INP-BC
Tél : 32.05.28 ou 01.40.48.05.28
jessy....@sncf.fr
--------------------------------------------


Sonia

unread,
Jan 21, 2003, 8:41:30 AM1/21/03
to

Bonjour Jessy,

C'est le texte recherché dans le DCount multi-critère
suivant :

A = DCount("refFichier", "InvTTX", "RefFonds = '" &

Me.RefFonds & "' And...

Si tu as des idées...
Cordialement,
SONIA


>-----Message d'origine-----

>.
>

Pierre CFI

unread,
Jan 21, 2003, 11:40:59 AM1/21/03
to

bonjour
le Intro si c'est le nom du champ du form dans lequel tu saisie qq chose
...... And [Nom] = '*" & Me.intro.value & "*'")


"Sonia" <s.ga...@noos.fr> a écrit dans le message de news:
036201c2c152$ce0bbcf0$8af82ecf@TK2MSFTNGXA03...

Sonia

unread,
Jan 21, 2003, 6:00:01 PM1/21/03
to
Tiens ! quand on parle du loup ! ;o)
... eh bonsoir donc monsieur CFI... merci pour ta participation...
mais bon sang de bonsoir, ma parole à force de vouloir répondre à un
maximum de question en un minimum de temps...
Dans le message auquel tu réponds, c'est écrit (2 lignes plus bas) :
> C'est le texte recherché dans le DCount multi-critère

... donc, capitaine, ce n'est pas un champ, mais bel et bien du
texte...
... et l'idee c'est de pouvoir écrire, non pas égal au texte, mais
contient le texte (like "*"), sauf que la syntaxe marche pas...

Donc, chef, si tu as une idée... ?
Cordialement,
SONIA

3stone

unread,
Jan 21, 2003, 6:35:20 PM1/21/03
to
Salut Sonia,

Sonia


> ... et l'idee c'est de pouvoir écrire, non pas égal au texte, mais
> contient le texte (like "*"), sauf que la syntaxe marche pas...

derničre tentative... ;-)

si c'est vraiment le mot "intro" que tu cherche
quelque part dans le nom...

... And ![Nom] Like *'intro'*" )

C'est ca ???

Jessy Sempere

unread,
Jan 22, 2003, 2:30:42 AM1/22/03
to
Salut

"3stone" :


> si c'est vraiment le mot "intro" que tu cherche
> quelque part dans le nom...
>
> ... And ![Nom] Like *'intro'*" )

Je crois que tu as inversé les ' ..., perso je mettrais
... And ![Nom] Like '*intro*'" )

Sonia

unread,
Jan 22, 2003, 5:29:50 AM1/22/03
to
'lut Pierre,

Ben non : marche pas :o[ ...désolée ! (opérateur absent... bla,
bla...)
Merci pour la persévérance, mais on dirait que je suis tombée sur un
os...
Donc personnellement je crois bien que je laisses tomber...
Pas grave je vais m'en sortir avec :

A = DCount("refFichier", "InvTTX", "RefFonds =

Forms![FmrFondsTraitement]![RefFonds] And ([nom]='intro' or [Nom]=
'introduction')")

... en espérant seulement qu'il n'y aura pas un zozo qui écrira
introd, ou encore introduct, ou je ne sais quoi encore...

bof !
Merci encore,
SONIA

> dernière tentative... ;-)

3stone

unread,
Jan 22, 2003, 7:17:37 AM1/22/03
to

Bonjour Jessy,

Jessy Sempere


> Je crois que tu as inversé les ' ..., perso je mettrais
> ... And ![Nom] Like '*intro*'" )

hé oui...
et de pire, c'est que le ! n'est pas accepté dans les fonctions de domaine...

"[Nom] like '*intro*'")

fonctionne très bien...
(je me suis décidé à le tester, au lieu de le faire au pif ;-))

Sonia

unread,
Jan 22, 2003, 1:03:21 PM1/22/03
to
Bravo, bravo et encore bravo !!:o))
Fa marche !
Jessy, Pierre... ouf ! la persévérance est décidément
avantageuse... comme dirait Lao Tseu (ou peut-être bien
Confucius...)
Vous êtes des chefs !
Merci encore,
SONIA


>-----Message d'origine-----

>.
>

0 new messages