IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Erreur Champ trop petit [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre habitué
    Inscrit en
    Avril 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 352
    Points : 150
    Points
    150
    Par défaut Erreur Champ trop petit
    Bonsoir le forum
    J' ai une table environnement composé d' in champ texte de 255 caracteres
    le code qui alimente cette table fonctionne parfaitement sous access 2003 et Windows Xp. Ce meme code me donne l' erreur suivante "erreur d' execution 3163 le champ est trop petit pour accepter la quantité de donnée ...etc
    Voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Dim Db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim rst As DAO.Recordset
    Dim N As Integer
    Set Db = CurrentDb()
    Set tdf = Db.CreateTableDef("tblEnvironDetails")
    With tdf
    .Fields.Append .CreateField("EnvironValue", dbText)
    End With
    Set rst = Db.OpenRecordset("tblEnvironDetails", dbOpenDynaset)
    N = 1
    Do Until Environ(N) = ""
    rst.AddNew
    rst!environvalue = Environ(N)
    rst.Update
    N = N + 1
    Loop
    rst.Close
    Db.Close
    Je ne vois ou est le pb car il fonctionne tres bien en version anterieur
    Merci d' avance pour toute aide
    Aladin

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    la taille du champ Texte n'étant pas spécifiée elle prend la valeur par défaut suivant les options ( 40 caractères à l'installation)
    Il faudrait préciser la taille comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    .Fields.Append .CreateField("EnvironValue", dbText, 255)

  3. #3
    Membre habitué
    Inscrit en
    Avril 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 352
    Points : 150
    Points
    150
    Par défaut
    Bonjour helas et le forum
    Merci d' avoir réponsdu , J' ai essayé ta correction sur le code mais j' ai toujours la meme erreur et le code se bloque sur cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rst!environvalue = Environ(N)
    Aladin

  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,

    L'erreur est normale, car tu essaie de récupérer des variables d'environnement qui peuvent contenir plus de 255 caractères....donc effectivement ton champ texte est trop petit....

    Dans ta table tblEnvironDetails, change le type du champ EnvironValue de texte à Mémo...

  5. #5
    Membre habitué
    Inscrit en
    Avril 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 352
    Points : 150
    Points
    150
    Par défaut
    Bonsoir FreeAccess et le forum
    Effecteivement en passant le champ en type memo, je n' ai plus le message d' erreur, je pensais bien qu' il y avait une trop grande quantité de donnée a entre mais je n' ai pas pensé au champ de type memo
    Merci pour ta réponse et bonne continuation
    Aladin

  6. #6
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Pour te rendre compte de la longueur de tes variables ajoute dans ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ....
    ....
    Do Until Environ(N) = ""
    rst.AddNew
    rst!environvalue = Environ(N)
    MsgBox "Variable d'environnement n° " & N & vbCrLf & vbCrLf & Environ(N) & vbCrLf & vbCrLf & "Nombre de caractères = " & Len(Environ(N))
    rst.Update
    N = N + 1
    Loop

  7. #7
    Membre habitué
    Inscrit en
    Avril 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 352
    Points : 150
    Points
    150
    Par défaut
    Bonjour FreeAccess et le forum
    J' ai rajouté la ligne de de code et effectivement j' ai une variavle d' environnement qui fait 267 caractres, en conclusion cette seule variable bloquait le code.
    Merci et bonne continuation
    Aladin

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. GridBagLayout et champs trop petits
    Par freeway57 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 17/07/2014, 14h57
  2. [AC-2007] Erreur 3163 "Champ trop petit"
    Par Nephyline dans le forum VBA Access
    Réponses: 2
    Dernier message: 21/03/2012, 12h33
  3. Réponses: 11
    Dernier message: 23/11/2011, 18h18
  4. Taille de champ trop petit
    Par imsse dans le forum VBA Access
    Réponses: 15
    Dernier message: 19/06/2008, 10h52
  5. "Champ trop petit pour quantité de données"
    Par Miss Ti dans le forum Access
    Réponses: 9
    Dernier message: 25/07/2006, 20h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo