Commentaire renvoyer une valeur dans une cellule précise d'une t ab
5 réponses
DM
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans
le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3,
5)?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Argyronet
Bonjour,
Il serait judicieux de savoir si c’est un INSERT ou un UPDATE… Un INSERT ajoute une ligne d’enregistrement donc pas à un endroit précis comme vous le souhaitez ! Pour ce faire, il vous faut l’ID de l’enregistrement à mettre à jour sans quoi ce n'est pas possible (Condition WHERE). Voici comment procéder
Sub MettreAJour(ID As Variant, ContenuChamp As Variant) Dim oRS As DAO.Recordset Dim strIdentifiant As String
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Set oRS = CurrentDb.OpenRecordset("SELECT * FROM MaTable WHERE MonID = " & strIdentifiant, 2) With oRS .Edit .Fields("ChampNo3") = ContenuChamp .update .Close End With Set oRS = Nothing End Sub
Et vous l’utilisez comme suit : Sub TEST() MettreAJour Me!Identifiant, Me!ValeurTextBox End Sub
P.S. Vérifiez que vous avez bien une référence à DAO 3.6 dans les références...
-- Argy http://argyronet.developpez.com/
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3, 5)?
Je bricole avec INSERT INTO mais en vain....
Sauriez-vous?
Merci
Bonjour,
Il serait judicieux de savoir si c’est un INSERT ou un UPDATE…
Un INSERT ajoute une ligne d’enregistrement donc pas à un endroit précis
comme vous le souhaitez !
Pour ce faire, il vous faut l’ID de l’enregistrement à mettre à jour sans
quoi ce n'est pas possible (Condition WHERE).
Voici comment procéder
Sub MettreAJour(ID As Variant, ContenuChamp As Variant)
Dim oRS As DAO.Recordset
Dim strIdentifiant As String
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34))
Set oRS = CurrentDb.OpenRecordset("SELECT * FROM MaTable WHERE MonID = " &
strIdentifiant, 2)
With oRS
.Edit
.Fields("ChampNo3") = ContenuChamp
.update
.Close
End With
Set oRS = Nothing
End Sub
Et vous l’utilisez comme suit :
Sub TEST()
MettreAJour Me!Identifiant, Me!ValeurTextBox
End Sub
P.S. Vérifiez que vous avez bien une référence à DAO 3.6 dans les
références...
--
Argy
http://argyronet.developpez.com/
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans
le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3,
5)?
Il serait judicieux de savoir si c’est un INSERT ou un UPDATE… Un INSERT ajoute une ligne d’enregistrement donc pas à un endroit précis comme vous le souhaitez ! Pour ce faire, il vous faut l’ID de l’enregistrement à mettre à jour sans quoi ce n'est pas possible (Condition WHERE). Voici comment procéder
Sub MettreAJour(ID As Variant, ContenuChamp As Variant) Dim oRS As DAO.Recordset Dim strIdentifiant As String
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Set oRS = CurrentDb.OpenRecordset("SELECT * FROM MaTable WHERE MonID = " & strIdentifiant, 2) With oRS .Edit .Fields("ChampNo3") = ContenuChamp .update .Close End With Set oRS = Nothing End Sub
Et vous l’utilisez comme suit : Sub TEST() MettreAJour Me!Identifiant, Me!ValeurTextBox End Sub
P.S. Vérifiez que vous avez bien une référence à DAO 3.6 dans les références...
-- Argy http://argyronet.developpez.com/
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3, 5)?
Je bricole avec INSERT INTO mais en vain....
Sauriez-vous?
Merci
Eric
Bonjour,
On n'est pas sous Excel là donc il te faut disposer d'un moyen permettant d'identifier la ligne, ça devrait être l'identifiant de la table normalement. A partir de là, faire une requête Update du genre :
Currentdb.Execute "Update toto Set champNumero3=" & me!Textbox1 & " where idTable=" & Me!Identifiant ' pour du numérique
ou pour de l'alphanumérique: Currentdb.Execute "Update toto Set champNumero3=" & chr(34) & me!Textbox1 & chr(34) & " where idTable=" & chr(34) & Me!Identifiant & chr(34)
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3, 5)?
Je bricole avec INSERT INTO mais en vain....
Sauriez-vous?
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
On n'est pas sous Excel là donc il te faut disposer d'un moyen
permettant d'identifier la ligne, ça devrait être l'identifiant de la
table normalement. A partir de là, faire une requête Update du genre :
Currentdb.Execute "Update toto Set champNumero3=" & me!Textbox1 & "
where idTable=" & Me!Identifiant ' pour du numérique
ou pour de l'alphanumérique:
Currentdb.Execute "Update toto Set champNumero3=" & chr(34) &
me!Textbox1 & chr(34) & " where idTable=" & chr(34) & Me!Identifiant &
chr(34)
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans
le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3,
5)?
Je bricole avec INSERT INTO mais en vain....
Sauriez-vous?
Merci
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
On n'est pas sous Excel là donc il te faut disposer d'un moyen permettant d'identifier la ligne, ça devrait être l'identifiant de la table normalement. A partir de là, faire une requête Update du genre :
Currentdb.Execute "Update toto Set champNumero3=" & me!Textbox1 & " where idTable=" & Me!Identifiant ' pour du numérique
ou pour de l'alphanumérique: Currentdb.Execute "Update toto Set champNumero3=" & chr(34) & me!Textbox1 & chr(34) & " where idTable=" & chr(34) & Me!Identifiant & chr(34)
Bonjour,
Tout d'abord merci pour vos réponses ici et là..... Forum très enrichissant..
J'ai un form ave un text box; je veux renvoyer la valeur de ce textbox dans le champ No3 de la table "toto" à la ligne 5 (la cellule de coordonnées (3, 5)?
Je bricole avec INSERT INTO mais en vain....
Sauriez-vous?
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
DM
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Que fait cette ligne?
Et MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une zone de liste "Results"auquel cas Me!ValeurTextBox devient Me!Results.Column(2) ????
Merci Argy
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34))
Que fait cette ligne?
Et
MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une
zone de liste "Results"auquel cas
Me!ValeurTextBox devient Me!Results.Column(2) ????
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Que fait cette ligne?
Et MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une zone de liste "Results"auquel cas Me!ValeurTextBox devient Me!Results.Column(2) ????
Merci Argy
Argyronet
Eh bien comme le précise d'une façon dérivée Eric, dans Excel, on sollicite une cellule par le biais d'une ligne et d'une colonne. Dans une table, un enregistrement est identifié par un champ unique sans doublon. Par exemple, la table Clients : IDCLient, Societe, Contact, Adresse, CP, Ville Tél, Mail, Fax, CreationLe
Ici, IDClient est un champ Compteur (1, 2, 3, 4...) qui s'incrémente de 1 à chaque nouvelle entrée. Pour trouver un client, j'écrirais: "SELECT Societe FROM TBLClients WHERE IDCLient = " & 5 & ";" Par contre, si l'IDCLient est un alphanumérique (CLI001, CLI002, CLI0032, CLI004...) je dois alors poser des guillemets dans la condition WHERE:
"SELECT Societe FROM TBLClients WHERE IDCLient = " & Chr(34) & "CLI002" & Chr(34) & ";"
Mon bloc IIf() de tout à l'heure affecte la variable strIdentifiant de manière à,lui attribuer la bonne syntaxe selon que ID était Numéric ou String.
Même si l'on parle de colonne et de ligne dans un ListBox, ce dernier est régi par une table et contient une colonne 0 qui représente l'identifiant de la ligne. Il est primordial que vous compreniez bien le concept d'une table, ce qu'est une clé primaire, une relation, un type de champ... etc. Sans quoi vous allez patauger sans cesse et perdre un temps précieux !
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Que fait cette ligne?
Et MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une zone de liste "Results"auquel cas Me!ValeurTextBox devient Me!Results.Column(2) ????
Merci Argy
Eh bien comme le précise d'une façon dérivée Eric, dans Excel, on sollicite
une cellule par le biais d'une ligne et d'une colonne. Dans une table, un
enregistrement est identifié par un champ unique sans doublon.
Par exemple, la table Clients :
IDCLient, Societe, Contact, Adresse, CP, Ville Tél, Mail, Fax, CreationLe
Ici, IDClient est un champ Compteur (1, 2, 3, 4...) qui s'incrémente de 1 à
chaque nouvelle entrée.
Pour trouver un client, j'écrirais:
"SELECT Societe FROM TBLClients WHERE IDCLient = " & 5 & ";"
Par contre, si l'IDCLient est un alphanumérique (CLI001, CLI002, CLI0032,
CLI004...) je dois alors poser des guillemets dans la condition WHERE:
"SELECT Societe FROM TBLClients WHERE IDCLient = " & Chr(34) & "CLI002" &
Chr(34) & ";"
Mon bloc IIf() de tout à l'heure affecte la variable strIdentifiant de
manière à,lui attribuer la bonne syntaxe selon que ID était Numéric ou String.
Même si l'on parle de colonne et de ligne dans un ListBox, ce dernier est
régi par une table et contient une colonne 0 qui représente l'identifiant de
la ligne.
Il est primordial que vous compreniez bien le concept d'une table, ce qu'est
une clé primaire, une relation, un type de champ... etc. Sans quoi vous allez
patauger sans cesse et perdre un temps précieux !
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient.
Si vous n´obtenez pas la réponse voulue, communiquez différemment
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34))
Que fait cette ligne?
Et
MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une
zone de liste "Results"auquel cas
Me!ValeurTextBox devient Me!Results.Column(2) ????
Eh bien comme le précise d'une façon dérivée Eric, dans Excel, on sollicite une cellule par le biais d'une ligne et d'une colonne. Dans une table, un enregistrement est identifié par un champ unique sans doublon. Par exemple, la table Clients : IDCLient, Societe, Contact, Adresse, CP, Ville Tél, Mail, Fax, CreationLe
Ici, IDClient est un champ Compteur (1, 2, 3, 4...) qui s'incrémente de 1 à chaque nouvelle entrée. Pour trouver un client, j'écrirais: "SELECT Societe FROM TBLClients WHERE IDCLient = " & 5 & ";" Par contre, si l'IDCLient est un alphanumérique (CLI001, CLI002, CLI0032, CLI004...) je dois alors poser des guillemets dans la condition WHERE:
"SELECT Societe FROM TBLClients WHERE IDCLient = " & Chr(34) & "CLI002" & Chr(34) & ";"
Mon bloc IIf() de tout à l'heure affecte la variable strIdentifiant de manière à,lui attribuer la bonne syntaxe selon que ID était Numéric ou String.
Même si l'on parle de colonne et de ligne dans un ListBox, ce dernier est régi par une table et contient une colonne 0 qui représente l'identifiant de la ligne. Il est primordial que vous compreniez bien le concept d'une table, ce qu'est une clé primaire, une relation, un type de champ... etc. Sans quoi vous allez patauger sans cesse et perdre un temps précieux !
Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment
Merci, je comprends la logique, cependant pouvez-vous m'éclaircir sur :
strIdentifiant = IIf(IsNumeric(ID), str(ID), Chr(34) & str(ID) & Chr(34)) Que fait cette ligne?
Et MettreAJour Me!Identifiant, Me!ValeurTextBox
A quoi correspond Me!Identifiant ?
La valeur de mon text box est en fait la valeur de la 2ème colonne d'une zone de liste "Results"auquel cas Me!ValeurTextBox devient Me!Results.Column(2) ????