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

Macros et VBA Excel Discussion :

Affichage format de Date dans un Combobox [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2015
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Algérie

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2015
    Messages : 86
    Par défaut Affichage format de Date dans un Combobox
    Bonjour à tous

    Voila je viens vers vous afin de résoudre un problème d'affichage, en effet j'ai en dessous une macro qui fonctionne à merveille seulement l'affichage dans le ComboBox1 n'est pas en format date car au clique ou la saisie il m'affiche des chiffres tel que : 42858....42859... etc

    Donc ma demande est : Que faudrait-il ajouter au code ci dessous pour faire apparaitre la date au format "mm/dd/yyyy" dans le ComboBox1 sans modifier le principe de la macro.

    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
    20
    21
    22
    'Variables utilisées dans les macros.
    Dim F As Worksheet, Choix
     
    Public Sub UserForm_Initialize()
    'Raffraichir pendant le code
      Application.ScreenUpdating = True
    'Déterminer la feuille source qui va alimenter le Combobox
      Set F = Sheets("Feuil1")
    'La plage débute de la ligne 14 jusqu'à la dernière ligne 10000
      If F.[A10000].End(xlUp).Row > 14 Then
    'Variable qui transpose les noms dans le Combobox
      Choix = Application.Transpose(F.Range("A14:A" & F.[A10000].End(xlUp).Row))
      Me.ComboBox1.List = Choix
    'Assosier le nom dans le Combobox avec la variable Choix pour le filtrage
      Else
          ReDim Choix(1 To 1)
          If F.[A10000].End(xlUp).Row = 14 Then
          Me.ComboBox1.Clear
          Me.ComboBox1.AddItem F.[A14]: Choix(1) = F.[A14]
        End If
      End If
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub ComboBox1_Change()
    'L'application de filtrage des dates à la saisie semi-automatique en fonction du
    'chiffre tapé dans le Combobox1
      If Me.ComboBox1.ListIndex = -1 And IsError(Application.Match(Me.ComboBox1, Choix, 0)) Then
         Me.ComboBox1.List = Filter(Choix, Me.ComboBox1.Text, True, vbTextCompare)
      End If
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
      Me.ComboBox1.DropDown
    End Sub
    Merci à vous tous

    Cordialement

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    la propriété Value d'une vraie date retournant forcément une valeur numérique
    mieux vaut alors utiliser la propriété Text de la cellule pour conserver son affichage …

    ___________________________________________________________________________________________________________
    Je suis Paris, Manchester, Egypte, Stockholm, London, Istanbul, Berlin, Nice, Bruxelles, Charlie, …

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2015
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Algérie

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2015
    Messages : 86
    Par défaut
    Merci bcp Marc-L pour le fil après essai oui tout fonctionne à merveille

    Merci encore

  4. #4
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Tu pourrais aussi remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Choix = Application.Transpose(F.Range("A14:A" & F.[A10000].End(xlUp).Row))
     
      Me.ComboBox1.List = Choix
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ]Choix = Application.Transpose(F.Range("A14:A" & F.[A10000].End(xlUp).Row).Value)
     
      Me.ComboBox1.List = Choix

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

Discussions similaires

  1. [XL-2010] Format de Date dans un Combobox
    Par pimpom81 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/09/2014, 13h21
  2. [XL-2007] Affichage d'une date dans un combobox
    Par apt dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/06/2012, 10h01
  3. Format de date dans formulaire (ComboBox)
    Par vatfer dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/08/2010, 19h50
  4. Formater l'affichage d'une date dans une vue
    Par ripcurl dans le forum Requêtes
    Réponses: 2
    Dernier message: 31/05/2010, 16h57
  5. Réponses: 5
    Dernier message: 14/03/2009, 18h41

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