Date de rupture sous Access ou VBA
Fermé
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
-
18 juil. 2005 à 10:13
donlefou Messages postés 44 Date d'inscription lundi 18 avril 2005 Statut Membre Dernière intervention 28 juin 2007 - 20 juil. 2005 à 15:47
donlefou Messages postés 44 Date d'inscription lundi 18 avril 2005 Statut Membre Dernière intervention 28 juin 2007 - 20 juil. 2005 à 15:47
A voir également:
- Date de rupture sous Access ou VBA
- Airpods 3 date de sortie - Guide
- Publipostage date en anglais ✓ - Forum Excel
- Jm date désabonnement ✓ - Forum Consommation & Internet
- Trouver une date de naissance gratuit ✓ - Forum Google Chrome
9 réponses
nico7382
Messages postés
279
Date d'inscription
lundi 6 juin 2005
Statut
Membre
Dernière intervention
22 décembre 2010
50
18 juil. 2005 à 10:38
18 juil. 2005 à 10:38
Salut,
je pense que sous VBA c'est plus facile:
il faut faire une requete pour avoir tout tes REF1 order by daterupture
initialiser SommeQtéCommande à QtéCommande
puisbouclé dessus tant que Stock>SommeQtéCommande (ou plus d'enregistrement)
passer au suivant
ajouter QtéCommande à SommeQtéCommande
revenir dans la boucle
en sortant de la boucle la date de rupture est la daterupture de l'element courant
je pense que sous VBA c'est plus facile:
il faut faire une requete pour avoir tout tes REF1 order by daterupture
initialiser SommeQtéCommande à QtéCommande
puisbouclé dessus tant que Stock>SommeQtéCommande (ou plus d'enregistrement)
passer au suivant
ajouter QtéCommande à SommeQtéCommande
revenir dans la boucle
en sortant de la boucle la date de rupture est la daterupture de l'element courant
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
18 juil. 2005 à 10:42
18 juil. 2005 à 10:42
Salut,
il faut utiliser du vba pour parcourir une requête temporaire (celle qui renvoir les résultats par produit, dont tu donnes l'exemple), additionner les commandes et lorsqu'elles sont supérieures au stock, renvoyer la date...
Si tu me donnes un peu plus de détail (on affiche où la date ? la requête renvoie-t'elle plusieurs produits ?...), je peux te faire une ébauche de code...
il faut utiliser du vba pour parcourir une requête temporaire (celle qui renvoir les résultats par produit, dont tu donnes l'exemple), additionner les commandes et lorsqu'elles sont supérieures au stock, renvoyer la date...
Si tu me donnes un peu plus de détail (on affiche où la date ? la requête renvoie-t'elle plusieurs produits ?...), je peux te faire une ébauche de code...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
18 juil. 2005 à 15:09
18 juil. 2005 à 15:09
J'ai une table "Commandes" comme ceci:
Référence Stock Qté Date
REF1 1000 40 05/07/05
REF1 1000 500 06/07/05
REF1 1000 490 08/07/05
REF1 1000 20 10/07/05
REF2 500 300 04/07/05
REF2 500 250 05/07/05
(le stock est unique pour une REF!! même si je le réaffiche)
Je voudrais obtenir une (autre) table comme ceci :
Référence Stock Qté DateRupture
REF1 1000 1050 08/07/05
REF2 500 550 05/07/05
(je fais la somme des Qté commandées et j'affiche seulement la date de rupture)
Tu pourrais me dire comment faire en VBA ? Parce que je ne maitrise pas trop ce langage.
Référence Stock Qté Date
REF1 1000 40 05/07/05
REF1 1000 500 06/07/05
REF1 1000 490 08/07/05
REF1 1000 20 10/07/05
REF2 500 300 04/07/05
REF2 500 250 05/07/05
(le stock est unique pour une REF!! même si je le réaffiche)
Je voudrais obtenir une (autre) table comme ceci :
Référence Stock Qté DateRupture
REF1 1000 1050 08/07/05
REF2 500 550 05/07/05
(je fais la somme des Qté commandées et j'affiche seulement la date de rupture)
Tu pourrais me dire comment faire en VBA ? Parce que je ne maitrise pas trop ce langage.
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
18 juil. 2005 à 15:21
18 juil. 2005 à 15:21
Quand est-ce que tu veux calculer tes dates ?
Tu vas en faire quoi de ta table résultat ?
Je te prépare un peu de code...
Tu vas en faire quoi de ta table résultat ?
Je te prépare un peu de code...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
18 juil. 2005 à 15:45
18 juil. 2005 à 15:45
les dates sont calculés tout le temps (en fait à chaque lancement de mon application). J'ai un code VBA qui fait tourner l'appli, qui lance les formulaires, les états, initialisation...La table avec toutes les commandes et dates peut changer toutes les heures, il faut donc une fonction qui calcule les dates de ruptures qui s'exécute à chaque lancement de l'application. Concernant la table résultat, je veux juste l'afficher avec un état mais ça je sais faire, il me faut juste la table résultat avec les bonnes dates, mises à jour si la table des commandes changent.
J'espère que je suis assez clair dans mon explication, sinon je peux te détailler davantage.
J'espère que je suis assez clair dans mon explication, sinon je peux te détailler davantage.
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
18 juil. 2005 à 16:05
18 juil. 2005 à 16:05
les dates sont calculés tout le temps (en fait à chaque lancement de mon application). J'ai un code VBA qui fait tourner l'appli, qui lance les formulaires, les états, initialisation...La table avec toutes les commandes et dates peut changer toutes les heures, il faut donc une fonction qui calcule les dates de ruptures qui s'exécute à chaque lancement de l'application. Concernant la table résultat, je veux juste l'afficher avec un état mais ça je sais faire, il me faut juste la table résultat avec les bonnes dates, mises à jour si la table des commandes changent.
J'espère que je suis assez clair dans mon explication, sinon je peux te détailler davantage.
J'espère que je suis assez clair dans mon explication, sinon je peux te détailler davantage.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
18 juil. 2005 à 16:13
18 juil. 2005 à 16:13
Tu crées une table nommé "Tab-sortie" avec tous les champs suivants :
- 1 champ de clé, numéroauto
- 1 champ REF, texte
- 1 champ Stock, numérique
- 1 champ Qté, numérique
- 1 champ DateRup, date
Tu recopies le code suivant dans l'évènement "sur clic" d'un bouton de commande, et hop, y'a plus qu'a appuyer (mais la table tab-sortie ne se vide jamais, à toi de la gérer) :
Si tu as des soucis, je revois cela demain...
- 1 champ de clé, numéroauto
- 1 champ REF, texte
- 1 champ Stock, numérique
- 1 champ Qté, numérique
- 1 champ DateRup, date
Tu recopies le code suivant dans l'évènement "sur clic" d'un bouton de commande, et hop, y'a plus qu'a appuyer (mais la table tab-sortie ne se vide jamais, à toi de la gérer) :
Dim Rs As Recordset Dim Rs1 As Recordset Dim AncRef As String Dim Ref As String Dim Qté As Integer Dim Stock As Integer Dim Datee As Date Dim SumCde As Integer Dim DateRup As Date Dim BooFirst As Boolean AncRef = "" SumCde = 0 BooFirst = True Set Rs = CurrentDb.OpenRecordset("select [Référence],Stock,Qté,Date from Commandes order by 1,4") Set Rs1 = CurrentDb.OpenRecordset("Tab-sortie", dbOpenTable, dbAppendOnly) While Not Rs.EOF With Rs Ref = !référence Stock = !Stock Qté = !Qté Datee = !Date If BooFirst = True Then BooFirst = False AncRef = Ref End If If AncRef <> Ref Then With Rs1 .AddNew !référence = Ref !Stock = Stock !Qté = SumCde !DateRup = DateRup .Update End With AncRef = Ref SumCde = 0 End If SumCde = SumCde + Qté If SumCde > Stock Then DateRup = Datee End If End With Rs.MoveNext Wend With Rs1 .AddNew !référence = Ref !Stock = Stock !Qté = SumCde !DateRup = Datee .Update End With Rs.Close Rs1.Close Set Rs = Nothing Set Rs1 = Nothing
Si tu as des soucis, je revois cela demain...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
18 juil. 2005 à 16:40
18 juil. 2005 à 16:40
Merci Blux, je vais essayer ça et je te réponds demain !
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
19 juil. 2005 à 14:42
19 juil. 2005 à 14:42
Salut, Blux, ton code ne me donne pas les bon résultats:
il y a des dates bizarre comme 30/12/1899, les sommes de quantité ne sont pas bonnes, il manque des fois des résultats.
Je voudrais aussi ne rien afficher pour la date s'il n'y a pas de rupture de stock.
Dans la table de sortie, je voudrais afficher :
- la référence
- le stock
- la somme des quantités commandés globale de cette référence(et non la somme des quantités commandés à partir duquel il y a rupture)
- la date de rupture ,sinon ne rien afficher si pas de rupture
Voici le code que j'ai légèrement modifié: en effet j'ouvre ma table (requête) "PB_CDC_DateRupture" qui contient toutes les commandes et leurs dates. Voici les champs de cette table : "Référence","Quantité","Quantitée Cumulée", "Date". (Quantité = Stock et Quantité Cumulée = Quantité de la commande.)
Function DateRupture()
Dim Rs As Recordset
Dim Rs1 As Recordset
Dim AncRef As String
Dim REF As String
Dim Qté As Long 'Integer
Dim Stock As Long 'Integer
Dim Datee As Date
Dim SumCde As Long 'Integer
Dim DateRup As Date
Dim BooFirst As Boolean
AncRef = ""
SumCde = 0
BooFirst = True
Set Rs = CurrentDb.OpenRecordset("PB_CDC_DateRupture")
'Set Rs = CurrentDb.OpenRecordset("select [Référence],Stock,Qté,Date from Commandes order by 1,4")
Set Rs1 = CurrentDb.OpenRecordset("TabRup")
While Not Rs.EOF
With Rs
REF = !Référence
Stock = !Quantité '!Stock
Qté = Nz(![Quantité Cumulée], 0) '!Qté
Datee = Nz(!Date, 0)
If BooFirst = True Then
BooFirst = False
AncRef = REF
End If
If AncRef <> REF Then
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = DateRup
.Update
End With
AncRef = REF
SumCde = 0
End If
SumCde = SumCde + Qté
If SumCde > Stock Then
DateRup = Datee
Else
DateRup = 0
End If
End With
Rs.MoveNext
Wend
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = Datee
.Update
End With
Rs.Close
Rs1.Close
Set Rs = Nothing
Set Rs1 = Nothing
End Function
il y a des dates bizarre comme 30/12/1899, les sommes de quantité ne sont pas bonnes, il manque des fois des résultats.
Je voudrais aussi ne rien afficher pour la date s'il n'y a pas de rupture de stock.
Dans la table de sortie, je voudrais afficher :
- la référence
- le stock
- la somme des quantités commandés globale de cette référence(et non la somme des quantités commandés à partir duquel il y a rupture)
- la date de rupture ,sinon ne rien afficher si pas de rupture
Voici le code que j'ai légèrement modifié: en effet j'ouvre ma table (requête) "PB_CDC_DateRupture" qui contient toutes les commandes et leurs dates. Voici les champs de cette table : "Référence","Quantité","Quantitée Cumulée", "Date". (Quantité = Stock et Quantité Cumulée = Quantité de la commande.)
Function DateRupture()
Dim Rs As Recordset
Dim Rs1 As Recordset
Dim AncRef As String
Dim REF As String
Dim Qté As Long 'Integer
Dim Stock As Long 'Integer
Dim Datee As Date
Dim SumCde As Long 'Integer
Dim DateRup As Date
Dim BooFirst As Boolean
AncRef = ""
SumCde = 0
BooFirst = True
Set Rs = CurrentDb.OpenRecordset("PB_CDC_DateRupture")
'Set Rs = CurrentDb.OpenRecordset("select [Référence],Stock,Qté,Date from Commandes order by 1,4")
Set Rs1 = CurrentDb.OpenRecordset("TabRup")
While Not Rs.EOF
With Rs
REF = !Référence
Stock = !Quantité '!Stock
Qté = Nz(![Quantité Cumulée], 0) '!Qté
Datee = Nz(!Date, 0)
If BooFirst = True Then
BooFirst = False
AncRef = REF
End If
If AncRef <> REF Then
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = DateRup
.Update
End With
AncRef = REF
SumCde = 0
End If
SumCde = SumCde + Qté
If SumCde > Stock Then
DateRup = Datee
Else
DateRup = 0
End If
End With
Rs.MoveNext
Wend
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = Datee
.Update
End With
Rs.Close
Rs1.Close
Set Rs = Nothing
Set Rs1 = Nothing
End Function
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
19 juil. 2005 à 15:32
19 juil. 2005 à 15:32
Le truc le plus important, c'est de veiller à ce que les données en entrée soient triées par produit et date, sinon ça met le b...
Or, quand tu ouvres ton recordset rs, tu ne mets que le nom de la table, sans indiquer après un .movefirst.
Le système te renvoiera donc les données selon l'index primaire de ladite table, pas forcément en commençant au premier enregistrement, et pour toi sûrement des erreurs imprévues car les enregistrements ne sont pas en séquence...
Ouvre ton recordset rs avec un select (avec order by) basé sur ta table PB_CDC_DateRupture, et redis-m'en des nouvelles...
Or, quand tu ouvres ton recordset rs, tu ne mets que le nom de la table, sans indiquer après un .movefirst.
Le système te renvoiera donc les données selon l'index primaire de ladite table, pas forcément en commençant au premier enregistrement, et pour toi sûrement des erreurs imprévues car les enregistrements ne sont pas en séquence...
Ouvre ton recordset rs avec un select (avec order by) basé sur ta table PB_CDC_DateRupture, et redis-m'en des nouvelles...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
>
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
19 juil. 2005 à 15:58
19 juil. 2005 à 15:58
Ca ne marche toujours pas.
Voila un extrait de ma table initiale (trié par ref et date) "PB_CDC_DateRupture":
Référence Quantité Quantité Cumulée Date
00036501 733
00044011 0 12 21/07/2005
00044011 0 20 22/07/2005
00044011 0 40 26/07/2005
00044011 0 50 26/07/2005
00044011 0 60 03/08/2005
00044051 20
00045011 0 25 26/07/2005
00045031 55 50 19/07/2005
00045031 55 200 20/07/2005
00045051 45
00045071 15 5 20/07/2005
(case vide = pas de commande, Quantité = Stock et Quantité Cumulée = Qté Commandée)
Voilà un extrait de ma table résultat "TabRup":
Référence Stock Qté DateRup
00044011 0 0 30/12/1899
00044051 20 182 03/08/2005
00045011 0 0 30/12/1899
00045031 55 25 26/07/2005
00045051 45 250 20/07/2005
00045071 15 0 30/12/1899
00045091 10 5 30/12/1899
00045121 5 0 30/12/1899
00045191 10 0 30/12/1899
00045961 14 0 30/12/1899
00046011 0 50 26/07/2005
00046031 0 15 26/07/2005
00046051 265 0 30/12/1899
00046071 70 0 30/12/1899
Dans le code j'ai juste remplacé
"Set Rs = CurrentDb.OpenRecordset("PB_CDC_DateRupture")
par
"Set Rs = CurrentDb.OpenRecordset("select Référence,Quantité,[Quantité Cumulée],Date From PB_CDC_DateRupture Order By
Référence,Date")"
Je voudrais obtenir le résultat suivant :
Référence Quantité Quantité Cumulée Date
00036501 733
00044011 0 182 21/07/2005
00044051 20
00045011 0 25 26/07/2005
00045031 55 250 20/07/2005
00045051 45
00045071 15 5
Quand il n'y a pas de rupture, on affiche pas de date mais on continue d'afficher la ref, le stock et la somme des quantités
commandés.
Voila un extrait de ma table initiale (trié par ref et date) "PB_CDC_DateRupture":
Référence Quantité Quantité Cumulée Date
00036501 733
00044011 0 12 21/07/2005
00044011 0 20 22/07/2005
00044011 0 40 26/07/2005
00044011 0 50 26/07/2005
00044011 0 60 03/08/2005
00044051 20
00045011 0 25 26/07/2005
00045031 55 50 19/07/2005
00045031 55 200 20/07/2005
00045051 45
00045071 15 5 20/07/2005
(case vide = pas de commande, Quantité = Stock et Quantité Cumulée = Qté Commandée)
Voilà un extrait de ma table résultat "TabRup":
Référence Stock Qté DateRup
00044011 0 0 30/12/1899
00044051 20 182 03/08/2005
00045011 0 0 30/12/1899
00045031 55 25 26/07/2005
00045051 45 250 20/07/2005
00045071 15 0 30/12/1899
00045091 10 5 30/12/1899
00045121 5 0 30/12/1899
00045191 10 0 30/12/1899
00045961 14 0 30/12/1899
00046011 0 50 26/07/2005
00046031 0 15 26/07/2005
00046051 265 0 30/12/1899
00046071 70 0 30/12/1899
Dans le code j'ai juste remplacé
"Set Rs = CurrentDb.OpenRecordset("PB_CDC_DateRupture")
par
"Set Rs = CurrentDb.OpenRecordset("select Référence,Quantité,[Quantité Cumulée],Date From PB_CDC_DateRupture Order By
Référence,Date")"
Je voudrais obtenir le résultat suivant :
Référence Quantité Quantité Cumulée Date
00036501 733
00044011 0 182 21/07/2005
00044051 20
00045011 0 25 26/07/2005
00045031 55 250 20/07/2005
00045051 45
00045071 15 5
Quand il n'y a pas de rupture, on affiche pas de date mais on continue d'afficher la ref, le stock et la somme des quantités
commandés.
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
19 juil. 2005 à 16:21
19 juil. 2005 à 16:21
Une petite erreur dans mon code :
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = DateRup
.Update
End With
Mettre
!Référence = AncRef
Par contre, je ne comprends pas comment tu peux avoir des "vides" dans les quantités, il devrait y avoir des zéros...
Pour le reste, je vais voir...
With Rs1
.AddNew
!Référence = REF
!Stock = Stock
!Qté = SumCde
!DateRup = DateRup
.Update
End With
Mettre
!Référence = AncRef
Par contre, je ne comprends pas comment tu peux avoir des "vides" dans les quantités, il devrait y avoir des zéros...
Pour le reste, je vais voir...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
19 juil. 2005 à 16:35
19 juil. 2005 à 16:35
Les cases vides sont une contrainte qu'on me donne, sinon pour faire les calculs sur les cases vides je les transforme en 0 avec la fonction Nz(champ,valeur si vide).
Par exemple :
!Qté = Nz(Quantité,0)
Je voudrais te poser une question aussi, concernant les dates. J'affiche juste les dates qd il y a rupture (avec le code
SumCde > SumCde +Qté
DateRup = Datee )
Comment faire si je ne veux pas afficher de date lorsqu'il n'y a pas rupture :
DateRup = 0 ou "" ou NULL .....
Si tu travailles sur le code, tu pourrais me l'envoyer une fois "complet", merci. N'hésite pas à me demander d'autre précision si t'en as besoin. En fait ce n'est qu'un petit bout de mon application access/vba et je peux pas avancer si je n'arrive pas à récupérer ces dates de rupture.
Par exemple :
!Qté = Nz(Quantité,0)
Je voudrais te poser une question aussi, concernant les dates. J'affiche juste les dates qd il y a rupture (avec le code
SumCde > SumCde +Qté
DateRup = Datee )
Comment faire si je ne veux pas afficher de date lorsqu'il n'y a pas rupture :
DateRup = 0 ou "" ou NULL .....
Si tu travailles sur le code, tu pourrais me l'envoyer une fois "complet", merci. N'hésite pas à me demander d'autre précision si t'en as besoin. En fait ce n'est qu'un petit bout de mon application access/vba et je peux pas avancer si je n'arrive pas à récupérer ces dates de rupture.
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
19 juil. 2005 à 17:24
19 juil. 2005 à 17:24
Blux, pour simplifier la tache, je n'ai pas besoin de récupérer la somme des quantités commandées. On affiche donc juste:
la référence, le stock, et la date éventuelle de rupture. Je ne sais pas si ça va diminuer le problème...
la référence, le stock, et la date éventuelle de rupture. Je ne sais pas si ça va diminuer le problème...
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
20 juil. 2005 à 11:30
20 juil. 2005 à 11:30
Ayais !
Les contraintes :
Les champs 'stock, qté' de la table 'commandes' sont de type texte avec 'chaine vide autorisée' à 'oui'
Les champs 'stock, qté, daterup' de la table 'tab-sortie' sont de type texte avec 'chaine vide autorisée' à 'oui'
Et ça marche bien, c'était rigolo à faire... mais j'ai pas optimisé...
Dim Rs As Recordset Dim Rs1 As Recordset Dim Ref As String Dim AncRef As String Dim Qté As Integer Dim Stock As Integer Dim AncStock As Integer Dim Datee As Date Dim SumCde As Integer Dim DateRup As Date Dim BooFirst As Boolean Dim BooDate As Boolean AncRef = "" SumCde = 0 AncStock = 0 BooFirst = True BooDate = False DateRup = #1/1/1900# Set Rs = CurrentDb.OpenRecordset("select [Référence],Stock,Qté,Date from Commandes order by 1,4") Set Rs1 = CurrentDb.OpenRecordset("Tab-sortie", dbOpenTable, dbAppendOnly) While Not Rs.EOF With Rs Ref = !référence Stock = Val(Nz(!Stock, 0)) Qté = Val(Nz(!Qté, 0)) Datee = Nz(!Date, #1/1/1900#) If BooFirst = True Then BooFirst = False AncRef = Ref End If If AncRef <> Ref Then With Rs1 .AddNew !référence = AncRef !Stock = AncStock If SumCde = 0 Then !Qté = "" Else !Qté = SumCde End If If DateRup = "01/01/1900" Then !DateRup = Null Else !DateRup = DateRup End If .Update BooDate = False DateRup = #1/1/1900# SumCde = 0 End With AncRef = Ref SumCde = 0 End If SumCde = SumCde + Qté AncStock = Stock If SumCde > Stock And BooDate = False Then DateRup = Datee BooDate = True End If End With Rs.MoveNext Wend With Rs1 .AddNew !référence = AncRef !Stock = AncStock If Qté = 0 Then !Qté = "" Else !Qté = SumCde End If If DateRup = "01/01/1900" Then !DateRup = Null Else !DateRup = DateRup End If .Update End With Rs.Close Rs1.Close Set Rs = Nothing Set Rs1 = Nothing
Les contraintes :
Les champs 'stock, qté' de la table 'commandes' sont de type texte avec 'chaine vide autorisée' à 'oui'
Les champs 'stock, qté, daterup' de la table 'tab-sortie' sont de type texte avec 'chaine vide autorisée' à 'oui'
Et ça marche bien, c'était rigolo à faire... mais j'ai pas optimisé...
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
20 juil. 2005 à 10:59
20 juil. 2005 à 10:59
ça ne me donne pas les bonnes dates, j'ai juste la dernière date et non la date de ruptutre
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
20 juil. 2005 à 11:51
20 juil. 2005 à 11:51
Merci Blux, je vais tester et je te repondrais
donlefou
Messages postés
44
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
28 juin 2007
20 juil. 2005 à 15:47
20 juil. 2005 à 15:47
C'est bon Blux, ça semble marcher. Je te remercie. Je fais tourner mon appli pendant qq temps pour tester;