OVH Cloud OVH Cloud

Concatenation : À Raymond ou Sam

4 réponses
Avatar
guy boily
Bonjour Messires,

Ca fait 3 jours que je travaille avec ce code qui va me permettre de
concaténer 2 champs dans ma table ..vous vous souvenez du code que j'avais
pris dans l'aide de microsoft ? Le voici adapté à ma base :

Function concatene()

Dim convergencec As Database
Dim ACCÈS DIRECT As Table
Dim convergence As Form
Dim recup1
Dim recup2

Set convergencec = CurrentDb()
Set ACCÈS DIRECT = convergencec.OpenTable("nomprenom")
Set convergence = Forms![nomprenom]
recup1 = convergence![NomC]
recup2 = convergence![Prenom]

If Not IsNull(recup1) Then
ACCÈS DIRECT.Index = "PrimaryKey"
ACCÈS DIRECT.Seek "=", recup1, recup2
ACCÈS DIRECT.Edit

ACCÈS DIRECT![nomprenom] = convergence![NomC] & " " & convergence![Prenom]
ACCÈS DIRECT.Update
concatene = ACCÈS DIRECT![Nomprenom]
End If
End Function.

À l'ouverture de mon formulaire , j'ai le message " Erreur de compilation"
et toutes les lignes ou le nom de ma table est mentionné sont en rouge ?

Que se passe-t-il ?

Le nom de ma table est exact ainsi que le nom de ma base,des contrôles de
mon formulaire et les noms de champs de ma base et j'ai bien inséré la
fonction dans un module que j'appelle dans le contrôle [nomprenom] de mon
formulaire.
J'ai également un champ indexé (clé primaire) en format "numéro continu".

Je possède windows XP et ACCESS 2000

Les Nuits sonts longues au Saguenay lac-st-jean de ce temps çi ...

À L'aide

Merci 10000000 Fois à l'avance

boily_SLSJ

4 réponses

Avatar
Raymond [mvp]
Bonjour.

Un nom de variable ne doit pas avoir d'espace et de caractères accentués:
Dim ACCÈS DIRECT à remplacer par
AccesDirect par exemple
As Table n'est pas un objet valide.

corrige d'abord toutes les erreurs de compilation et surtout les erreurs de
code.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"guy boily" a écrit dans le message de
news:
Bonjour Messires,

Ca fait 3 jours que je travaille avec ce code qui va me permettre de
concaténer 2 champs dans ma table ..vous vous souvenez du code que j'avais
pris dans l'aide de microsoft ? Le voici adapté à ma base :

Function concatene()

Dim convergencec As Database
Dim ACCÈS DIRECT As Table
Dim convergence As Form
Dim recup1
Dim recup2

Set convergencec = CurrentDb()
Set ACCÈS DIRECT = convergencec.OpenTable("nomprenom")
Set convergence = Forms![nomprenom]
recup1 = convergence![NomC]
recup2 = convergence![Prenom]

If Not IsNull(recup1) Then
ACCÈS DIRECT.Index = "PrimaryKey"
ACCÈS DIRECT.Seek "=", recup1, recup2
ACCÈS DIRECT.Edit

ACCÈS DIRECT![nomprenom] = convergence![NomC] & " " & convergence![Prenom]
ACCÈS DIRECT.Update
concatene = ACCÈS DIRECT![Nomprenom]
End If
End Function.

À l'ouverture de mon formulaire , j'ai le message " Erreur de compilation"
et toutes les lignes ou le nom de ma table est mentionné sont en rouge ?

Que se passe-t-il ?

Le nom de ma table est exact ainsi que le nom de ma base,des contrôles de
mon formulaire et les noms de champs de ma base et j'ai bien inséré la
fonction dans un module que j'appelle dans le contrôle [nomprenom] de mon
formulaire.
J'ai également un champ indexé (clé primaire) en format "numéro continu".

Je possède windows XP et ACCESS 2000

Les Nuits sonts longues au Saguenay lac-st-jean de ce temps çi ...

À L'aide

Merci 10000000 Fois à l'avance

boily_SLSJ


Avatar
Jessy Sempere [MVP]
Bonjour

Je pense que ce lien devrait t'aider :
http://access.jessy.free.fr/index.html?Menu=3&Page=ConcatForQuery


A voir pour l'utiliser dans une requête de mise à jour...

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------

"guy boily" a écrit dans le message
news:
Bonjour Messires,

Ca fait 3 jours que je travaille avec ce code qui va me permettre de
concaténer 2 champs dans ma table ..vous vous souvenez du code que j'avais
pris dans l'aide de microsoft ? Le voici adapté à ma base :

Function concatene()

Dim convergencec As Database
Dim ACCÈS DIRECT As Table
Dim convergence As Form
Dim recup1
Dim recup2

Set convergencec = CurrentDb()
Set ACCÈS DIRECT = convergencec.OpenTable("nomprenom")
Set convergence = Forms![nomprenom]
recup1 = convergence![NomC]
recup2 = convergence![Prenom]

If Not IsNull(recup1) Then
ACCÈS DIRECT.Index = "PrimaryKey"
ACCÈS DIRECT.Seek "=", recup1, recup2
ACCÈS DIRECT.Edit

ACCÈS DIRECT![nomprenom] = convergence![NomC] & " " & convergence![Prenom]
ACCÈS DIRECT.Update
concatene = ACCÈS DIRECT![Nomprenom]
End If
End Function.

À l'ouverture de mon formulaire , j'ai le message " Erreur de compilation"
et toutes les lignes ou le nom de ma table est mentionné sont en rouge ?

Que se passe-t-il ?

Le nom de ma table est exact ainsi que le nom de ma base,des contrôles de
mon formulaire et les noms de champs de ma base et j'ai bien inséré la
fonction dans un module que j'appelle dans le contrôle [nomprenom] de mon
formulaire.
J'ai également un champ indexé (clé primaire) en format "numéro continu".

Je possède windows XP et ACCESS 2000

Les Nuits sonts longues au Saguenay lac-st-jean de ce temps çi ...

À L'aide

Merci 10000000 Fois à l'avance

boily_SLSJ


Avatar
SaM
Bonjour Guy...

Tu vois, je te l'avais déjà dis...... Raymond à toujours raison et en plus
il est rapide ;-))

Ceci dit, corrige un peu ton code et je pense que cela va le faire. Va
également voir le lien que te donne Jessy, je crois qu'il répondra
exactement à tes besoins.


SaM
Avatar
guy boily
Boujour,

Merci pour vos conseils. Je constate que je suis maintenant rendu à l'étape
ou je ne pourrai plus avancé dans ACCESS sans apprendre le langage visual
basic que je ne connais pas du tout. J'avais réussi jusqu'à maintenant à me
debrouiller avec les différents forums et quelques bons volumes sur ACCESS
mais maintenant je vais passer aux choses sérieuses.Je m'y mets aujourd'hui
même.
Peut-être mes questions seront-elles plus intelligeantes.

Merci encore à vous deux
--
boily_SLSJ



Bonjour.

Un nom de variable ne doit pas avoir d'espace et de caractères accentués:
Dim ACCÈS DIRECT à remplacer par
AccesDirect par exemple
As Table n'est pas un objet valide.

corrige d'abord toutes les erreurs de compilation et surtout les erreurs de
code.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"guy boily" a écrit dans le message de
news:
Bonjour Messires,

Ca fait 3 jours que je travaille avec ce code qui va me permettre de
concaténer 2 champs dans ma table ..vous vous souvenez du code que j'avais
pris dans l'aide de microsoft ? Le voici adapté à ma base :

Function concatene()

Dim convergencec As Database
Dim ACCÈS DIRECT As Table
Dim convergence As Form
Dim recup1
Dim recup2

Set convergencec = CurrentDb()
Set ACCÈS DIRECT = convergencec.OpenTable("nomprenom")
Set convergence = Forms![nomprenom]
recup1 = convergence![NomC]
recup2 = convergence![Prenom]

If Not IsNull(recup1) Then
ACCÈS DIRECT.Index = "PrimaryKey"
ACCÈS DIRECT.Seek "=", recup1, recup2
ACCÈS DIRECT.Edit

ACCÈS DIRECT![nomprenom] = convergence![NomC] & " " & convergence![Prenom]
ACCÈS DIRECT.Update
concatene = ACCÈS DIRECT![Nomprenom]
End If
End Function.

À l'ouverture de mon formulaire , j'ai le message " Erreur de compilation"
et toutes les lignes ou le nom de ma table est mentionné sont en rouge ?

Que se passe-t-il ?

Le nom de ma table est exact ainsi que le nom de ma base,des contrôles de
mon formulaire et les noms de champs de ma base et j'ai bien inséré la
fonction dans un module que j'appelle dans le contrôle [nomprenom] de mon
formulaire.
J'ai également un champ indexé (clé primaire) en format "numéro continu".

Je possède windows XP et ACCESS 2000

Les Nuits sonts longues au Saguenay lac-st-jean de ce temps çi ...

À L'aide

Merci 10000000 Fois à l'avance

boily_SLSJ