PatCatNat’s
Faire de son négatif un positif !

Site personnel de Patrice MOREL.

Liste déroulante
Article mis en ligne le 18 février 2010
dernière modification le 25 juin 2016

par Patrice MOREL

Certaines colonnes sont vides alors qu’il y a des données.

Access 2003
Office 2003 - Access

Supprimer les données d’un champ :
Cette formule ne fonctionne pas : MaListeDeroulante = ""
Une chaîne vide est (communément représentée par 2 guillemets) est une chaine de caractères que l’on a vidée... Null est une absence de données !
Il faut mettre : MaListeDeroulante.Value = Null


Pour faire une liste déroulante où les années sont affichées directement sans faire de table spécifique :

Ceci est exemple basée sur "Réception focus" qui calcule sur 100 années à afficher :
Dans les propriétés de la liste, mettre "Origine source" à Liste valeurs.

Private Sub LmAnneeParution_GotFocus()

'Permet d'avoir l'année en cours en premier choix
LmAnneeParution = Year(Date)
    
'Etabli la liste sur 100 ans
    Dim i As Integer
    Dim strSource As String
    For i = 1 To 100
        strSource = strSource & ";" & Year(DateAdd("yyyy", i - 100, Date))
    Next i
    Me.LmAnneeParution.RowSource = Right(strSource, Len(strSource) - 1)

End Sub

J’ai une base Access qui fonctionne parfaitement sous XP.
Sous Vista les listes déroulantes des formulaires sont partiellement
vides
(certaines colonnes pas d’autres).
J’ai bien sûr vérifié les données, les largeurs de colonnes...

C’est un bogue corrigé dans un correctif Microsoft.

Sous Access 2003 installer le SP3 Office 2003.
Télécharger ici (http://www.microsoft.com/downloads/details.aspx?FamilyID=E25B7049-3E13-433B-B9D2-5E3C1132F206&displaylang=fr).

Rebboter.

Installer alors le correctif qui est dans le package de correctifs Access 2003 postérieurs au Service Pack 3 (18 décembre 2007).
Télécharger ici (http://support.microsoft.com/kb/945674).