| ||||||||
Petit astucien | Bonjour à tous J'ai récupéré en maintenance une base Access que je n'ai pas développé moi-même (cherchez l'erreur)...cette base permet l'édition automatique de devis commerciaux. Bien évidemment je rencontre un problème : Voici le message d'erreur obtenu :
Lorsque j'utilise ce code : Public Function getId(sqlQuery As String) As Integer J'ai bien compris que le résultat obtenu dépasse la limite fixée...mais je ne sais pas quoi faire. Jusqu'à très récemment ce code fonctionnait parfaitement...je ne souhaite donc pas le modifier; d'autant que j'ai bien essayé de remplacer le variabe "Integer" par "Double" ou "Long" et que cela n'a fait que décaler le problème sur un autre code... En revanche, il semblerait que le résultat soit incrémentable et je souhaiterai si possible remettre à zéro le compteur.
Je vous remercie par avance de vos réponses PS : Je travail sur Windows XP Pro SP3, Access 2000, Word & Excel 2003 et Visual basic 6.3 | |||||||
Publicité | ||||||||
| ||||||||
Petit astucien | Bonjour, Que contient varRecords(0,0) au moment où on veut l'imputer dans returnValue?
| |||||||
Petit astucien | Bonjour, varRecords(0, 0) = 32779 | |||||||
Petit astucien | Personne ne peut m'indiquer ou et comment remettre à zéro ce compteur ? Sinon, personne n'aurait une autre solution ? Merci d'avance. | |||||||
Petit astucien | Toujours personne ? | |||||||
Petit astucien | Bonsoir, J'avais perdu de vue votre demande. Désolé returnvalue est de type Integer or dans l'aide de visual basic on peut lire. Les variables de type Integer sont stockées sous la forme de nombres de 16 bits (2 octets) dont la valeur est comprise entre -32 768 et 32 767. Le caractère de déclaration de type Integer est le signe %. Les variables de type Integer permettent également de représenter des valeurs énumérées. Celles-ci peuvent contenir un ensemble fini d'entiers uniques possédant tous une signification particulière dans le contexte où ils sont utilisés. Elles permettent d'opérer facilement une sélection parmi un nombre connu de choix, du type noir = 0, blanc = 1, etc. Il est conseillé de définir des constantes pour chaque valeur énumérée via l'instruction Const. N'est-ce pas là la source de l'erreur? | |||||||
Petit astucien | Comme je l'avais indiqué, j'ai bien compris que le résultat obtenu dépasse la limite imposée par la variable "Integer" et c'est effectivement là la source d'erreur. Ce que je voudrai faire, c'est remettre à zéro le compteur...mais je ne sais si c'est possible et encore moins comment. Pouvez-vous m'aider ? Sinon, est-ce que remplacer toute les variables "Integer" par des variables "Long" est une bonne solution ?? Concrètement, qu'est-ce que cela peux changer ? Quel problème pourrait éventuellement se poser ? Je vous remercie d'avance pour vos réponses. | |||||||
Petit astucien | Bonjour, Le type long dans l'aide de visual basic. Long, type de donnéesVoir aussi Exemple Particularités Les variables de type Long (entier long) sont stockées sous la forme de nombres signés de 32 bits (4 octets) dont la valeur est comprise entre -2 147 483 648 et 2 147 483 647. Le caractère de déclaration de type Long est le signe &. Donc cela devrait permettre d'éviter le dépassement de capacité. | |||||||
Petit astucien | Ok, j'ai donc remplacé toutes les variables "Integer" par des variables "Long" et refonctionne correctement (au début je n'avais fait cette modif que sur la partie du code posant problème). Je te remercie de ta participation rj390111 (Peut-être à une prochaine | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | |||||||||||||||
|