cs_djimson
Messages postés53Date d'inscriptionsamedi 14 octobre 2006StatutMembreDernière intervention23 mai 2017
-
18 déc. 2006 à 12:40
cs_djimson
Messages postés53Date d'inscriptionsamedi 14 octobre 2006StatutMembreDernière intervention23 mai 2017
-
19 déc. 2006 à 08:48
Bonjours à tous, je fais un programme, je genere mon numero jusqu'à 55. Arrivée au 55ème on dit qu'il ya doublon. Je comprend rien. J'utilise ACCESS 2003 et c'es en VISUAL BASIC 6.0.
Merci de m'aidé
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 18 déc. 2006 à 12:45
Bonjour,
cela aurait été probablement plus efficace de
poser la question sur VBFrance.com,
mais à priori, je dirais qu'il y a une erreur
à la ligne 89.
<hr />
Cordialement Bul [mon Site] [M'écrire]
<hr />
cs_djimson
Messages postés53Date d'inscriptionsamedi 14 octobre 2006StatutMembreDernière intervention23 mai 2017 18 déc. 2006 à 14:30
Ok je veux juste faire incrementer mes clefs a cahque fois que je clique sur le bouton nouveau. Au debut ca marche mais j'attein un certain nombre de données dans ma base (55) ca n'incremente plus cad que ca reste sur le 55ème au lieu de passer au 56ème
VOICI LE CODE
private sub nouveau_click()
Dim nbenr As String
Dim ok As Long
Call activer_txt
Call desactiver
nbenr = rscalcul.RecordCount
'nbenr = nbenr - 1
If nbenr > 0 Then
rscalcul.MoveLast
If nbenr < 10 Then
ok = Right(rscalcul![noagt], 1)
Else
If nbenr >= 10 And nbenr < 100 Then
ok = Right(rscalcul![noagt], 2)
Else
If nbenr >= 100 And nbenr < 1000 Then
ok = Right(rscalcul![noagt], 2)
Else
If nbenr >= 1000 And nbenr < 10000 Then
ok = Right(rscalcul![noagt], 4)
Else
If nbenr >= 10000 Then
ok = Right(rscalcul![noagt], 5)
End If
End If
End If
End If
End If
End If
nb = Val(ok) + 1
numsalaire.Text = "Sal_" & Str(nb)
rscalcul.AddNew
numfiche.Text = "Fich_" & Str(nb)
rsfiche.AddNew
end sub
NB: Je veux généré 2 numero en meme temps. Un pour le calcul et l'autre pour la fiche.
J'ai aussi essaiyé celui ci mais idem.
rscalcul.update
rscalcul.MoveLast
permet la numerotation automatique des code d
nouvnum = Trim(Str(rscalcul.RecordCount + 1))
numsalaire = Left("000000", 4 - Len(nouvnum)) + nouvnum
datefiche = date
rscalcul.AddNew 'ajout des valeurs a l'enregistrement
rsfiche.update
rsfiche.MoveLast
nouvnumf = Trim(Str(rsfiche.RecordCount + 1))
numfiche = Left("000000", 4 - Len(nouvnumf)) + nouvnumf
txtdatepmt = date
rsfiche.AddNew
cs_djimson
Messages postés53Date d'inscriptionsamedi 14 octobre 2006StatutMembreDernière intervention23 mai 2017 18 déc. 2006 à 14:56
ca cè vrai amis seulement je veux que la clé qui se etrouve dans ma table calcul migre vers la table fiche. c'est ce qui m'a poussé à passé de la sorte.
Ne m'en vouler pas, j'ai bien precisé que je suis novice et je cherche à comprendre et apprendre. Explique moi dc comment faire
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 18 déc. 2006 à 23:31
Je ne suis pas certain de ce que tu veux faire exactement, mais si tu veux incrémenter le dernier numéro d'enregistrement de 1, il te suffirait de faire une requête SQL Order by Numéro, faire un Movelast et incrémenter le numéro trouvé.
En regardant ton premier code, je ne vois pas à quoi servent les conditions
>1 <=10
>10 <=100
......................
Pour le 2e code, je ne vois pas à quoi sert de lire la gauche de "000000"
Que ce soit 1 ou 2 ou 3...caractères, tu auras 0 comme résultat, il me semble...
Voici comment je procéderais (avec DAO):
Set Rs = Db.OpenRecordset("Select MonNumero from MaTable Order by MonNumero")
Rs.Movelast
MonNouveauNumero = Rs!MonNumero + 1
Rs.Close