OVH Cloud OVH Cloud

comment forcer recalcul Maxdom ?

6 réponses
Avatar
ran[débutante vba]
Je crains de faire tache.
J'y arrive pas.
J'essaie un truc du genre ...
' --------------------------------------------------
' FONCTION INCREMENT POUR REQUETE
' --------------------------------------------------
' Entr=E9e : champ pour DMax
' table pour DMax
' idvar <- Une valeur quelconque, ou un
'champ de requ=EAte qui varie =E0 chaque enregistrement
' Sortie : Increment -> Nombre entier incr=E9ment=E9
'
Public Function Test(champ As String, table As String, v=20
As Variant)
Randomize
temp =3D Int(Rnd * v)
Test =3D (DMax(champ, table) + 1) + temp
Test =3D Test - temp
'Response =3D MsgBox(temp)
End Function

mais =E7a reforce pas mon calcul
comment faire ?
merci les pros

6 réponses

Avatar
malade.vieux.pauvre
Bonjour,
le rnd*v je vois pas a quoi il sert?
mais si le compteur test (c'est bien un compteur ?)
n'est pas enregistré dans la table le dmax renvera tjrs la même valeur
sous reserve d'interpretation correcte
Denis

"ran[débutante vba]" a écrit dans le
message de news: 0dda01c518b1$7eb953c0$
Je crains de faire tache.
J'y arrive pas.
J'essaie un truc du genre ...
' --------------------------------------------------
' FONCTION INCREMENT POUR REQUETE
' --------------------------------------------------
' Entrée : champ pour DMax
' table pour DMax
' idvar <- Une valeur quelconque, ou un
'champ de requête qui varie à chaque enregistrement
' Sortie : Increment -> Nombre entier incrémenté
'
Public Function Test(champ As String, table As String, v
As Variant)
Randomize
temp = Int(Rnd * v)
Test = (DMax(champ, table) + 1) + temp
Test = Test - temp
'Response = MsgBox(temp)
End Function

mais ça reforce pas mon calcul
comment faire ?
merci les pros
Avatar
ran[nulle vba]
j'essaie juste de forcer le recalcul du maxdom
comme j'ai vu une fonction random qui a l'air de forcer
le recalcul
j'ai essayé de l'intéger (je maitrise pas)

en vain visiblement

-----Message d'origine-----
Bonjour,
le rnd*v je vois pas a quoi il sert?
mais si le compteur test (c'est bien un compteur ?)
n'est pas enregistré dans la table le dmax renvera tjrs
la même valeur

sous reserve d'interpretation correcte
Denis


Avatar
malade.vieux.pauvre
je ne comprends pas toute les fois que la fonction est utilisée
elle va automatiquement recalculer DMax(champ, table),
mais si champ et table sont # le resultat sera #
sinon sans modification chgt de table ou ajout d'enregistrement
le resultat sera tjrs identique.

"ran[nulle vba]" a écrit dans le message
de news: 03cf01c518b9$8292ead0$
j'essaie juste de forcer le recalcul du maxdom
comme j'ai vu une fonction random qui a l'air de forcer
le recalcul
j'ai essayé de l'intéger (je maitrise pas)

en vain visiblement

-----Message d'origine-----
Bonjour,
le rnd*v je vois pas a quoi il sert?
mais si le compteur test (c'est bien un compteur ?)
n'est pas enregistré dans la table le dmax renvera tjrs
la même valeur

sous reserve d'interpretation correcte
Denis


Avatar
ran[débutante]
Tu as parfaitement raison. Merci mais ça me dit tjrs pas
quoi faire.
Par contre ça m'explique pourquoi :

D'habitude j'utilise le maxdom dans un formulaire pour
incrémenter mon ID.

Là j'ai besoin d'ajouter une série d'enregistrements à la
table par une requête AJOUT.

Alors dans la requête ajout, j'utilise aussi le maxdom
mais basé sur la table destination, dont la valeur d'est
pas incrémentée avant la finalisation de l'ajout.

Or en l'occurence, l'ajout essaie de coller les
enregistrements qui ont tous le même numéro d'ID (unique
et ss doublon => couac)

voilà qu'est-ce qu'on fait s'iouplait m'sieur ?
merci

-----Message d'origine-----
...

mais si champ et table sont # le resultat sera #
sinon sans modification chgt de table ou ajout
d'enregistrement

le resultat sera tjrs identique.


Avatar
malade.vieux.pauvre
et pourquoi pas une requete qui ajoute un seul enregistrement à la fois
dans une boucle for/next ou do/loop

"ran[débutante]" a écrit dans le message
de news: 040b01c518c4$cf940c50$
Tu as parfaitement raison. Merci mais ça me dit tjrs pas
quoi faire.
Par contre ça m'explique pourquoi :

D'habitude j'utilise le maxdom dans un formulaire pour
incrémenter mon ID.

Là j'ai besoin d'ajouter une série d'enregistrements à la
table par une requête AJOUT.

Alors dans la requête ajout, j'utilise aussi le maxdom
mais basé sur la table destination, dont la valeur d'est
pas incrémentée avant la finalisation de l'ajout.

Or en l'occurence, l'ajout essaie de coller les
enregistrements qui ont tous le même numéro d'ID (unique
et ss doublon => couac)

voilà qu'est-ce qu'on fait s'iouplait m'sieur ?
merci

-----Message d'origine-----
...

mais si champ et table sont # le resultat sera #
sinon sans modification chgt de table ou ajout
d'enregistrement

le resultat sera tjrs identique.


Avatar
ran[débutante]
vi, je vais essayer de goupiller ça
merci

bonne journée

-----Message d'origine-----
et pourquoi pas une requete qui ajoute un seul
enregistrement à la fois

dans une boucle for/next ou do/loop