Problème sur insert dans base car string entre apostrophe et nom " !!!!!

Nitocris - 30 juil. 2001 à 16:21
 Nitocris - 31 juil. 2001 à 10:01
Bonjour,

J'essaye de renseigner des tables d'une base de donnée ("Sage") via des drivers ODBC et un programme en VBA
A partir d'une feuille Excel renseigner je fait des inserts dans la table souhaitée mais j'ai rencontré un problème assez important :
Je veux inserer des articles avec une référence et une désignation, dans la désignation je veux pouvoir mettre un caractère de type apostrophe chose difficile car les insertions dans la base sont fait de la façon suivante :

SQL_insert_article = "INSERT INTO F_Article ( AR_Ref, AR_Design, FA_CodeFamille, AR_UniteVen, AR_PrixAch, AR_Coef, AR_PrixVen ) values ('" & ref & "','" & désignation & "','" & Codefamille & "',1," & P_achat & ",1," & P_Public & ")"

odbc.Open SQL_insert_article, dbsage

Les variables sont comprises entre apostrophe donc, le moteur pense que j'ai un argument de trop
c'est un problème similaire a celui des " dans les string, ou l'on en met 2 pour en faire 1.
Y a t-il une méthode similaire en sachant que la le problème se complique car c'est dans une variable, chose que je peux détourner en traitant, (en rajoutant ou modifiant les caractères avant l'insertion).
Merci d'avance la liste.
A voir également:

2 réponses

La solution: a la place de " tu met: chr(39) (code ascii)
et tu concatène avec &.
A la place de ' c'est chr(34).
0
La solution n'est malheureusement pas aussi facile
le caractère ' ce trouve dans une string, cette string est encadrée par des apostrophes (') donc arrivé au ' le compilateur pense que c'est la fin de celle-ci et attend un autre arguments vu qu'il y a une apostrophe en plus comment faire pour lui faire comprendre le problème ?
0
Rejoignez-nous