Problème type field : dbText ou rien

Fermé
coudgrizou - Modifié le 4 mai 2020 à 18:33
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 - 7 mai 2020 à 10:17
Bonjour,

Quelqu'un a-t-il trouvé la réponse à ce problème?
(suite discution https://forums.commentcamarche.net/forum/forum/affich-8352936-access-vba-probleme-type-field )

Il n'y a que dbMemo et dbText qui fonctionnent. Je ne peux donc pas créer un champ de type numérique.

Merci par avance pour votre aide.

Configuration: Windows / Chrome 81.0.4044.129

5 réponses

yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
Modifié le 4 mai 2020 à 18:49
0
Bonjour Yg_be et merci de ton aide,

Ça fait plaisir de voir une communauté prête à aider!

Private Sub basMacro1()

On Error GoTo err
Dim oDb As DAO.Database
Dim otbl As DAO.TableDef
Dim ofld As DAO.Field
Set oDb = CurrentDb
Set otbl = oDb.TableDefs("table1")
'Etape 1 : Créer le champ
Set ofld = otbl.CreateField("au" & Date)
'Etape 2 : Définit les propriétés
ofld.Type = dbNumeric
ofld.AllowZeroLength = True 'Chaine vide autorisée : oui
ofld.Required = False 'Null interdit : non
'Etape 3 : Ajout du champ à la table
otbl.Fields.Append ofld
'Rafraichit la collection
otbl.Fields.Refresh
MsgBox ofld.Name
'suppression champ
otbl.Fields.Delete ofld.Name
Exit Sub
err:
Select Case err.Number
'Si impossible de trouver l'élément dans la collection
Case 3265
MsgBox "impossible de trouver ta table: " & strT_archiveshdv
Case 3010, 3191
MsgBox "Le champ " & Date & " existe déjà"
Case Else: MsgBox "Erreur inconnue. Avez-vous fermé la table?"
End Select

J'ai essayé createfield(nom,type) aussi mais sans succès.
Je pensais que c'était à cause de la date dans le nom du champ mais en la supprimant ça ne fonctionne pas non plus.
Je n'ai plus d'idée…
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
7 mai 2020 à 09:50
peux-tu partager le code complet de ta sub? merci aussi de spécifier "basic" dans les balises de code.
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
7 mai 2020 à 09:56
la première chose à faire, c'est de déterminer quelle ligne de code cause l'erreur.
supprime donc la ligne
 On Error GoTo err
, qui te cache cela.

je pense qu'ainsi, tu découvriras et comprendra rapidement ton erreur.
0
Pardon,
J'ai juste oublié la ligne end sub après end select.
Basic c'est pour préciser que c'est du VBA, j'imagine. J'y penserai la prochaine fois.
Merci de ton aide.
0
Ok, je vais faire ça et je reviens.
Cela dit, il suffit que je mette dbtext et tout fonctionne. Je n'ai pas précisé que j'ai réessayé sur une table vierge au cas où la table d'origine avait un problème ou une restriction qui m'avait échappé.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
J'ai intégré le paramètre "chaine vide autorisée" à un champ type nunérique. "chaine" incompatible avec "numérique" => Eurêka!
Encore merci pour ton aide!
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
7 mai 2020 à 10:17
parfait! peux-tu marquer la discussion comme résolue?
0