Besoin d'aide en vba sur Excel

backin Messages postés 18 Statut Membre -  
backin Messages postés 18 Statut Membre -
J'ai un nouveau problème de programmation en vba sous excel. Je voudrait qu'en choisissant une date dans une listbox (intégrée dans une userform) que j'ai construite, la cellule (de la feuille 1 par exemple) contenant cette date soit sélectionnée. Je n'y arrive pas.
(Dans les propriété de la listbox j'ai mis dans Rowsource la plage de cellule ou je veux rechercher ma date...je me rends compte que c'est pas très clair ce que je raconte, j'espère que vous comprendrez).

Si quelqu'un pouvait m'aider car cause de ça je suis bien coincé.

Merci

4 réponses

  1. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Bonjour backin,

    Il y a sans doute plus simple, mais vite fait, ci-dessous ça marche.
    RowSource : la plage (A1:A10) de Feuil1.
    Private Sub ListBox1_Click()
      Dim I As Long
      For I = 1 To Range(ListBox1.RowSource).Cells.Count
        If Sheets("Feuil1").Cells(I, 1).Value = ListBox1.Value Then
          Sheets("Feuil1").Cells(I, 1).Select
          Exit For
        End If
      Next
    End Sub
    0
  2. backin Messages postés 18 Statut Membre
     
    Merci pour ta réponse mais...

    ...ça ne fonctionne pas. Mais j'ai oublié de préciser quelque chose : les données des cellules de ma "Rowsource" sont des dates et quand je choisi une de ces dates dans ma listbox au lieu de s'afficher une date il s'affiche un numéro à 5 chiffres (je crois...) du type 38548. Peut-être que ça ne fonctionne pas à cause de ça. Peut-être qu'il faut que je dise à ma listbox que les données de la rowsource sont des dates mais je ne sais pas comment faire. quelqu'un peut-il m'aider ?

    Merci d'avance
    0
    1. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
       
      Hébé je vois pas pourquoi ça marche pas. Voici ce que j'ai fait :
      - la plage (A1:A10) de ma Feuil1 est remplie de dates définies au format date
      - dans les propriétés de ma ListBox1, j'ai mis pour RowSource : Feuil1!A1:A10

      La ListBox1 affiche des dates correctes. En choisissant une date dans la liste, la date correspondante de la plage dans Feuil1 est sélectionnée.
      Alors... ?
      0
    2. Utilisateur anonyme
       
      Bonjour,

      l'affichage ne serait-il pas en jours julien ?

      Lupin
      0
  3. Utilisateur anonyme
     
    re:

    If Sheets("Feuil1").Cells(I, 1).Value = format(ListBox1.Value,"aaaa-mm-jj") Then

    Lupin
    0
    1. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
       
      Tu as raison, ça peut être une piste...
      0
  4. backin Messages postés 18 Statut Membre
     
    merci les gars ça fonctionne (ça ne fonctionnait pas car je faisais une fausse-manip)

    Merci bcp a+ pour une nouvelle question (ça ne serai tarder à mon avis...:)
    0