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

description détaillée table

1 réponse
Avatar
yann2
Bonjour,

je cherche le moyen d'imprimer la structure de chaque table de mon appli
en mettant les colonnes suivantes:
Nom du champ / type/ description

A ma grande surprise la fonction
Outils / Analyse/ Documentation ne me permet pas cette édition car je
ne vois rien sur la description de chaque champ.

Avez vous une astuce pour faire celà.

Yann

1 réponse

Avatar
Eric
Bonjour,

Dans Outils|Analyse|Documentation, si tu cliques sur le bouton Options
et que tu coches pour les champs Noms, Types de données, Tailles et
propriétés, la ligne Description s'affiche si tu as renseigné la
description du champ. Toutefois, tu auras toutes les propriétés du champ
et pas uniquement la description.

Si tu veux n'avoir que ces 3 propriétés, il te faudra faire du vba.
Exemple de code pour un état qui a en-entête d'état une zone de texte
nommée Titre et dans la section Détail 3 zones de texte nommées
respectivement NomChamp, TypeChamp & Description qui ont toutes les 3 la
propriété AutoExtensible à Oui.

Voila le code du module de l'état. Il doit y avoir plus simple et cela
peut être largement amélioré. Bonne lecture ;-)

Option Compare Database

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
Dim bd As Database
Dim t As TableDef, f As Field
Set bd = CurrentDb
Me.Titre = Titre.Tag & " " & CurrentProject.Name
For Each t In bd.TableDefs
If Left(t.Name, 4) <> "MSys" Then
Set t = bd.TableDefs(t.Name)
Me.NomChamp = Me.NomChamp & "Table : " _
& UCase(t.Name) & vbCrLf
Me.TypeChamp = Me.TypeChamp & vbCrLf
Me.Description = Me.Description & vbCrLf
For Each f In t.Fields
Me.NomChamp = Me.NomChamp & f.Name & vbCrLf
Me.TypeChamp = Me.TypeChamp & FieldType(f.Type) & vbCrLf
Me.Description = Me.Description _
& fnRetourDescriptionChamp(t.Name, f.Name) & vbCrLf
Next f
Me.NomChamp = Me.NomChamp & vbCrLf
Me.TypeChamp = Me.TypeChamp & vbCrLf
Me.Description = Me.Description & vbCrLf
End If
Next t
Set t = Nothing
bd.Close
Set bd = Nothing
End Sub

Private Sub EntêteÉtat_Format(Cancel As Integer, FormatCount As Integer)
' Titre.Tag contient Champs : Nom, Type, Description des tables de
la base
Me.Titre = Titre.Tag & " " & CurrentProject.Name
End Sub

Function fnRetourDescriptionChamp(UneTable As String, _
UnChamp As String) As String
Dim bd As Database, t As TableDef
Dim f As Field
Set bd = CurrentDb
Set t = bd.TableDefs(UneTable)
Set f = t.Fields(UnChamp)
On Error GoTo TraitementErreur
fnRetourDescriptionChamp = f.Properties("Description")
Set f = Nothing
Set t = Nothing
bd.Close
Set bd = Nothing
Exit Function
TraitementErreur:
If Err = 3270 Then
fnRetourDescriptionChamp = "Pas de description"
Resume Next
End If
End Function

Function FieldType(intType As Integer) As String
' adaptée de l'aide
Select Case intType
Case dbBoolean
FieldType = "Booléen"
Case dbByte
FieldType = "Octet"
Case dbInteger
FieldType = "Entier"
Case dbLong
FieldType = "Entier Long"
Case dbCurrency
FieldType = "Monétaire"
Case dbSingle
FieldType = "Simple précision"
Case dbDouble
FieldType = "Double précision"
Case dbDate
FieldType = "Date/Heure"
Case dbText
FieldType = "Texte"
Case dbLongBinary
FieldType = "Objet OLE"
Case dbMemo
FieldType = "Memo"
End Select
End Function




Bonjour,

je cherche le moyen d'imprimer la structure de chaque table de mon appli
en mettant les colonnes suivantes:
Nom du champ / type/ description

A ma grande surprise la fonction
Outils / Analyse/ Documentation ne me permet pas cette édition car je
ne vois rien sur la description de chaque champ.

Avez vous une astuce pour faire celà.

Yann





--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr