Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème quand guillemet

3 réponses
Avatar
Opus
Bonjour à tous,

Voici un exemple (très simplifié)

CHAMP= "MonChampDeDestination"
CONTENUCHAMP= "Contrat"

CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (" &
CONTENUCHAMP & "); "

Ceci crée un enregistrement dans le champ "MonChampDeDestination" de la
table "MaTable" -> OK

Par contre, CONTENUCHAMP= "Contrat d'entretien" produit une erreur. (A cause
de la guillemet).

Comment éviter la chose?

Bien à vous.

3 réponses

Avatar
Eric
Bonjour,

Faire:
CurrentDb.Execute "INSERT INTO [MaTable] ([" & CHAMP &"]) VALUES (" &
chr(34) & CONTENUCHAMP & chr(34) & "); "

ou
CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (""" &
CONTENUCHAMP & """); "

CHR(34) est l'équivalent du guillemet.
Les [] autour de champ c'est pour plus de sécurité s'il vient à contenir
un espace ou un caratère exotique.


Bonjour à tous,

Voici un exemple (très simplifié)

CHAMP= "MonChampDeDestination"
CONTENUCHAMP= "Contrat"

CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (" &
CONTENUCHAMP & "); "

Ceci crée un enregistrement dans le champ "MonChampDeDestination" de la
table "MaTable" -> OK

Par contre, CONTENUCHAMP= "Contrat d'entretien" produit une erreur. (A cause
de la guillemet).

Comment éviter la chose?

Bien à vous.


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
ze Titi
Salut Opus !

La solution consiste à entourer le champ non par un apostrophe mais par
des guillemets :

CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (" &
chr(34) & CONTENUCHAMP & chr(34) & "); "

en sachant que chr(34) correspond aux guillemets en ASCII.

En ce jour exceptionnel du lundi 12/03/2007, tu nous as très
généreusement gratifié du message suivant:

Bonjour à tous,

Voici un exemple (très simplifié)

CHAMP= "MonChampDeDestination"
CONTENUCHAMP= "Contrat"

CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (" &
CONTENUCHAMP & "); "

Ceci crée un enregistrement dans le champ "MonChampDeDestination" de la
table "MaTable" -> OK

Par contre, CONTENUCHAMP= "Contrat d'entretien" produit une erreur. (A cause
de la guillemet).

Comment éviter la chose?

Bien à vous.


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Opus
MERCI


Bonjour,

Faire:
CurrentDb.Execute "INSERT INTO [MaTable] ([" & CHAMP &"]) VALUES (" &
chr(34) & CONTENUCHAMP & chr(34) & "); "

ou
CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (""" &
CONTENUCHAMP & """); "

CHR(34) est l'équivalent du guillemet.
Les [] autour de champ c'est pour plus de sécurité s'il vient à contenir
un espace ou un caratère exotique.


Bonjour à tous,

Voici un exemple (très simplifié)

CHAMP= "MonChampDeDestination"
CONTENUCHAMP= "Contrat"

CurrentDb.Execute "INSERT INTO [MaTable] (" & CHAMP & ") VALUES (" &
CONTENUCHAMP & "); "

Ceci crée un enregistrement dans le champ "MonChampDeDestination" de la
table "MaTable" -> OK

Par contre, CONTENUCHAMP= "Contrat d'entretien" produit une erreur. (A cause
de la guillemet).

Comment éviter la chose?

Bien à vous.


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr