Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Dépassement de capacité dans champ entier long

3 réponses
Avatar
J-Pierre
Bonjour tout le monde,

Des heures que je cherche.....

Dans une table, j'ai un champ défini comme entier long.

En mode feuille de données, je peux entrer n'importe quelle valeur
Dans un formulaire de mise à jour, je peux entrer n'importe quelle valeur.
Dans un autre formulaire en mode "entrée de données oui", je crée une ligne dans cette table par code VBA (ADO). Jusqu'à une
valeur de 32767, tout se passe bien, si je tape 32768 pour ce champ, j'ai le message d'erreur "Dépassement de capacité".

Rien de spécial ou d'inhabituel dans les définitions du contrôle......

Si j'osais, je dirais que je me prendrais bien une petite Tisane.

Bon appétit :-)

Merci
J-Pierre

3 réponses

Avatar
Tisane
Bonsoir Jean-Pierre,

Dans une table, j'ai un champ défini comme entier long.
En mode feuille de données, je peux entrer n'importe quelle valeur
Dans un formulaire de mise à jour, je peux entrer n'importe quelle valeur.
Dans un autre formulaire en mode "entrée de données oui", je crée une
ligne dans cette table par code VBA (ADO). Jusqu'à une valeur de 32767,
tout se passe bien, si je tape 32768 pour ce champ, j'ai le message
d'erreur "Dépassement de capacité".
Rien de spécial ou d'inhabituel dans les définitions du contrôle......


Qu'est-ce que tu as mis comme définition dans ta ligne de code ?
Le résultat dépasse 32767 (maximum de l'Entier).
Essaie d'utiliser CLng(Ta_Valeur).

--
Tisane ;-))

Avatar
rage
Je connais pas très bien access, mais c'est possible que pour lui un
entier long soit codé sur 16 bits.
Ce qui le limiterait à 65536 valeur (si je ne m'abuse). Donc, de -32767
à +32767.
N'y a t'il pas un autre type de données sous access qui permette des
chiffres plus gros ou des entiers long non signés (ce qui te permettrait
d'aller de 0 à 65535).

En espèrant aider

Régis.

Bonjour tout le monde,

Des heures que je cherche.....

Dans une table, j'ai un champ défini comme entier long.

En mode feuille de données, je peux entrer n'importe quelle valeur
Dans un formulaire de mise à jour, je peux entrer n'importe quelle valeur.
Dans un autre formulaire en mode "entrée de données oui", je crée une ligne dans cette table par code VBA (ADO). Jusqu'à une
valeur de 32767, tout se passe bien, si je tape 32768 pour ce champ, j'ai le message d'erreur "Dépassement de capacité".

Rien de spécial ou d'inhabituel dans les définitions du contrôle......

Si j'osais, je dirais que je me prendrais bien une petite Tisane.

Bon appétit :-)

Merci
J-Pierre




Avatar
J-Pierre
Bonsoir Tisane,

Et merci, en fait, je ne contrôlais pas la définition du bon champ..... Le champ incriminé était effectivement défini comme
entier, et pas entier long.

Parfois, il y a des claques qui se perdent.

J-Pierre

"Tisane" a écrit dans le message de news:
Bonsoir Jean-Pierre,

Dans une table, j'ai un champ défini comme entier long.
En mode feuille de données, je peux entrer n'importe quelle valeur
Dans un formulaire de mise à jour, je peux entrer n'importe quelle valeur.
Dans un autre formulaire en mode "entrée de données oui", je crée une ligne dans cette table par code VBA (ADO). Jusqu'à
une valeur de 32767, tout se passe bien, si je tape 32768 pour ce champ, j'ai le message d'erreur "Dépassement de
capacité".
Rien de spécial ou d'inhabituel dans les définitions du contrôle......


Qu'est-ce que tu as mis comme définition dans ta ligne de code ?
Le résultat dépasse 32767 (maximum de l'Entier).
Essaie d'utiliser CLng(Ta_Valeur).

--
Tisane ;-))