{Access} problème de requête

Résolu
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,

voici mon code :

INSERT INTO Devis ([N° Devis], N°lancement)
SELECT tCréationlancement.N°lancement, tCréationlancement.[N° Devis]
FROM tCréationlancement;

et mon problème c'est que j'ai un message qui me dit : "l'instruction INSERT INTO contient le nom de champ inconnu suivant : 'N°lancement'. Assurez-vous que vous avez correctement saisi le nom, puis recommencez l'opération".

j'ai regardé et j'ai bien saisi le nom et il m'affiche toujours ce même message.
pouvez-vous m'aider svp ?

29 réponses

Utilisateur anonyme
 
Salut,

Met tes champs entre quotes ( " " )

de plus je comprends pas ta requête, car tu fais un select dans Insert

et INSERT INTO va avec VALUES (....) que tu n'as pas...

Tu veux faire une requête imbriquée???
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
je pense qu'elle s'appelle comme cela
mais laisse tomber c problème n'est pas urgent j'en ai un autre
0
Utilisateur anonyme
 
lequel??
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
If tCréationlancement.[N°DAS] = ([Form_fNouveaudas].NUMDAS) Then
MsgBox "N° DAS déjà pris, veuillez en saisir un nouveau", vbCritical, "Attention..."
Else
MsgBox "N° DAS disponible, allezzzzzzzz y"
End If

Voilà mon code et cela me marque erreur d'éxécution 424, Objet requis
et comme je suis pas très bon je ne sais pas comment y résoudre et c'est, certes, un petit détail mais c'es très important pour moi.
0

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

Posez votre question
Utilisateur anonyme
 
Attends tu travaille en VBA??

Si oui, tu veux comparer la valeur d'une zone de texte pour voir si elle existe dans ta base c'est sa???
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
oui c'est bien sa.
est-ce possible ?
0
Utilisateur anonyme
 
Oui...

Tu utilise un jeu d'enregistrements pour créer une connexion

après tu fais un requête de selection style
Set rst =TaBase.OpenRecordset("SELECT * FROM NomDeTaTable")


après tu fais une boucle ou tu compare la valeur de ta zone de texte pour voir si elle correspond a ceux de la base.

if not RST.EOF Then

Rst.MoveFirst

Do

If zonedetexte = rst.Fields("ChampDelaBase") Then
tu fais un traitement
Else
Rst.MoveNext // tu vas sur l'enregistrement suivant
End If

Loop zonedetexte = = rst.Fields("ChampDelaBase")

End if


J'espère avoir été explicite...
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
j'essaye et puis je te dis si cela marche
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
mais je veux juste comparer j'ai vraiment besoin de faire set rst = etc ?
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
et c'est quoi ce jeu d'enregistrement pour faire la connexion ?
0
Utilisateur anonyme
 
oui tu es obligé...

sinon comment comptes - tu comparer t'es valeur et avec quoi??

il faut que tu lui définisse l'environnement sur lequel ton code va travailler

et tu le fais avec le Set rst = etc....
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
j'ai pas besoin de faire qqch avant le set rst = tec ?
0
Utilisateur anonyme
 
Si tu dois créer un jeu d'enregistrements

exemple

Dim Base As Database
Dim rst As Recordset

Set Base As CurrentDb <== si tu travaille sur la base en cours, sinon tu met l'emplacement de ta base.

et après tu fais

Set rst = Base.OpenRecordset("....
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
c'est pas plutôt set rst = currentDb ?
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
ou
dim bdd as database
dim rst as openrecordset

set bdd=currentdb
set rst = etc.
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
j'ai une autre erreur c'est que le message me marque aucun enregistrement en cours, sais-tu ce que cela veut dire ?

et le déboggeur me met sur cette ligne :"Loop Until ([Form_fNouveaudas].NUMDAS) = Rst.Fields("N°DAS")"
0
Utilisateur anonyme
 
juste avant de répondre : quel est le nom exact de ta textbox???
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
celle qui est à vérifier s'appelle NUMDAS qui vient du formulaire fNouveaudas et le champ dans ma base suivicommercial, il est dans la table DAS et il se nomme N°DAS
0
Utilisateur anonyme
 
Ok dans le loop met

Loop Until NUMDAS.Value = Rst.Fields("N°DAS")

et dis moi ce que tu as...

Faut pas t'en faire car le mot que tu vois "Aucun enregistrement" est normal...

je vais t'expliquer après comment le traiter
0
nikos le grec Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   1
 
le message que j'ai est "l'expression sur clic entrée comme paramètre etc"
0