Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/11/2011, 11h05   #1
Invité régulier
 
Femme
Inscription : mars 2011
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 52
Points : 9
Points : 9
Par défaut ajout données dans une table

Bonjour,
J’ai une table ou j’ai alimenté une réception de produits :

exemple :
réf produit : 408200
Q vrac : 500
Q/unité : sachet de 25
Q/sachet : 20

Comment je pourrais faire, pour créer une table qui m’ajoute 20 fois le même produit, pour que j’édite 20 étiquettes.

Es ce possible ?

Merci de me donner une idée.
rose0729 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2011, 18h48   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
À mettre dans un module et a adapter à ton besoin. Il faudra peut-être ajouter un code produit en paramètre.

Code :
1
2
3
4
5
6
7
8
9
10
public sub AjouterEtiquette(prmNbEtiquette as long)
  dim db as dao.database:set db=currentdb
  dim r as dao.recordset:set r=db.openRecordset("NomTaTable")
  dim i as long: for i=1 to prmNbEtiquette
     r.addnew 'crée un nouvel enr
     r![nomTonChamp]=TaValeur 'ici ce qiue tu veux mettre dans la table
     r.update 'Sauvegarde le nouvel enr
  next i
  set db=nothing
end sub
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 02/12/2011, 12h10   #3
Invité régulier
 
Femme
Inscription : mars 2011
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 52
Points : 9
Points : 9
oh merci pour l'idée marot r
je teste et je te tiens au courant
rose0729 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2011, 13h26   #4
Invité régulier
 
Femme
Inscription : mars 2011
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 52
Points : 9
Points : 9
j'en suis là !
je suis bloquée sur la ligne rose, j'ai comme message :
"trop peu de paramètre. 1 attendu"
pourtant ma requête est bien alimentée

Merci, si vous avez une idée

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  Dim db As dao.Database
  Dim r As dao.Recordset
  Dim s As dao.Recordset
  Dim i As Long
  Dim j As Long
  Set db = CurrentDb()
  Set r = db.OpenRecordset("RQreceptionEtiquette") 'requête ou j'ai les info
  Set s = db.OpenRecordset("dbo_etiquette") 'table ou je veux mettre les quantités d'étiquette voulues
  r.MoveFirst
  While Not r.EOF
  j = Int(r![QL] * r![QU])
   For i = 1 To j
       s.AddNew 'crée un nouvel enr
     s![numReception] = r![numReception] 'ici ce qiue tu veux mettre dans la table
     s![Codeproduit] = r![Codeproduit]
     s![QL] = r![QL]
     s.Update 'Sauvegarde le nouvel enr
  Next i
  Set db = Nothing
rose0729 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2011, 10h42   #5
Invité régulier
 
Femme
Inscription : mars 2011
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : mars 2011
Messages : 52
Points : 9
Points : 9
Evidemment que j'avais un message ! j'avais mal fait ma requête !
voilà la solution et ça marche
Merci à toi marot r
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  Dim db As Database
  Dim r As Recordset
  Dim s As Recordset
  Dim i As Long
  Dim j As Long
  Set db = CurrentDb()
  Set r = db.OpenRecordset("rqreceptionetiquette")  'requête ou j'ai les info
  Set s = db.OpenRecordset("dbo_etiquette") 'table ou je veux mettre les quantités d'étiquette voulues
  r.MoveFirst
  While Not r.EOF
  j = Int(r!QL * 1)
   For i = 1 To j
       s.AddNew 'crée un nouvel enr
     s![numReception] = r![numReception] 'ici ce qiue tu veux mettre dans la table
     s![Codeproduit] = r![Codeproduit]
     s![QL] = r![QL]
     s.Update 'Sauvegarde le nouvel enr
  Next i
  r.MoveNext
  Set db = Nothing
rose0729 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h55.


 
 
 
 
Partenaires

Hébergement Web