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 :

selection cellule selon ligne listbox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de frunch
    Homme Profil pro
    Développeur / comptable
    Inscrit en
    Janvier 2022
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur / comptable
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 174
    Par défaut selection cellule selon ligne listbox
    Bonjour à tous,
    J'ai une page de recettes qui reprend leurs ingredients, ce qui fait plusieurs fois des lignes pour la même recette.
    J'ai aussi plusieurs recettes qui commencent par les premiéres lettres, comme omelette au lard, champignons...
    Pour diriger l'utilisateur sur la 1ere ligne d'une recette, j'ai pris une listbox qui me filtre les recettes sur les 1eres lettres. Cà fonctionne.
    Mais pas de sélection, çà l'affiche juste dans la barre de formule, sans y aller.
    Auriez-vous une idée ?
    Merci
    forum.xlsm
    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
         Dim drl3%, i%, ws1 As Worksheet, cpt%
        Application.ScreenUpdating = False
        Set ws1 = Sheets("Repas")
        drl1 = ws1.Range("A" & Rows.Count).End(xlUp).Row
        For i = 2 To drl1
            For j = 0 To Me.LisRec.ListCount - 1
                 If Me.LisRec.Selected(j) And ws1.Range("A" & i).Value = Me.LisRec.List(j, 0) Then
                    Sheets("Repas").Activate
                    Range("A" & i).Select
                    Exit For
                 End If
            Next j
        Next i
        Unload Me
        Application.ScreenUpdating = True

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Bonjour, j'ai testé et ton code fonctionne, simplement si la cellule sélectionnée se situe sur une ligne située plus bas que la dernière ligne de l'écran, tu ne la vois pas. De plus ton code sélectionne la dernière ligne de la recette.
    J'ai retravaillé la macro pour éviter la double boucle for, me positionner sur la première ligne de la recette et faire défiler la page pour qu'elle se positionne sur la première ligne à l'écran.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub LisRec_Click()
    Dim ws1 As Worksheet
    Dim firstCell As Range
    Set ws1 = Sheets("Repas")
    If Me.LisRec.ListIndex <> -1 Then
        Set firstCell = ws1.Range("A:A").Find(What:=Me.LisRec.Value, LookIn:=xlValues, LookAt:=xlWhole)
        If Not firstCell Is Nothing Then
            ws1.Activate
            firstCell.Select
            ActiveWindow.ScrollRow = firstCell.Row
        End If
    End If
    Unload Me
    End Sub

  3. #3
    Membre très actif
    Avatar de frunch
    Homme Profil pro
    Développeur / comptable
    Inscrit en
    Janvier 2022
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur / comptable
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 174
    Par défaut
    Bonjour Franc,
    Super travail
    Il me reste à résoudre ces doublons, mais bon c'est moins important.
    Merci beaucoup

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

Discussions similaires

  1. [XL-2010] Selection cellule selon format
    Par Thib31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/12/2016, 12h06
  2. Réponses: 4
    Dernier message: 23/05/2013, 00h07
  3. Selection d'une ligne via les valeur de ces cellules
    Par bleuerouge dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 11/08/2010, 19h18
  4. Selection de lignes listbox
    Par Elumastebit dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/01/2009, 13h55
  5. flexgrid:selection cellule=selection ligne
    Par Terminator dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/10/2005, 21h27

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