Amélioration du code survol liste

Résolu
vieuxray -  
 vieuxray -
Bonjour a tous, forum bonjour,



Le petit code qui me donne du soucis est disponible sur le lien ci-dessous.

http://www.cjoint.com/c/FKghkwrglaz

Renommer si besoin comme ci-dessous, le fichier fonctionne bien.

Change couleur texte au passage de la souris.xlsm

Le programme affiche une liste de vidéos en colonne (A)

Les noms de cette liste change de couleur au passage où survol de la souris

Lorsque l'on sélectionne une vidéo, celle ci est charger et devient visible avec le multimédia de Windows 7 32 bits, le programme est en cours.

Pour avoir l'affichage qui change en rouge, il fallu en (mode création ajouter un CommandBoutton) qui sert de masque rendu transparent et que j'ai superposer sur la liste en colonne (A)

La liste ne va pas s'arrêter là et c'est là que ca va plus, quand je déplace le curseur de la souris sur la liste les noms changent bien de couleur mais plus on descends dans la liste on peux voir que le curseur se décale par rapport a la liste.

En haut de liste la souris corresponds bien avec le nom en ligne 1 puis plus on descends là ca commence se décaler doucement puis de plus en plus d'écart.

Donc, Je ne sais pas si c'est a cause du masque CommandBoutton mais je demande comment faire pour descendre plus bas en ligne 4000 et rester syncro souris / liste ???

Je vous souhaite un agréable dimanche a tous et merci pour votre aide.

Cdlt

7 réponses

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
     
    Bonjour,

    Une autre approche :
    https://www.cjoint.com/c/FKgoGKQZlbY
    1
    1. vieuxray
       
      Salut Patrice33740,

      Merci pour ta réponse c'est sympa,

      Je viens d'essayer le code que tu me proposes et je vois que le curseur vert ne prends pas la ligne 1 et 2 pas trouver pourquoi ???

      Puis il me faut en cliquant sur le film choisi récupérer le nom du film en entier pour l'envoyer ensuite vers le média player de Windows 7 pour lecture.

      Mais c'est bonne approche en tout cas, merci bien bonne fin d'après midi a toi.

      A plus tard, Cdlt Ray
      0
      1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783 > vieuxray
         
        il faut survoler le texte (tu peux le centrer)

        Pour charger le film :
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          If Target.Count > 1 Then Exit Sub
          If Intersect(Target, [A1].Resize([A1].End(xlDown).Row)) Is Nothing Then Exit Sub
          'Charger le fichier .avi
          MsgBox Target.Value
        End Sub

        .
        0
      2. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783 > Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention  
         
        Tu peux aussi créer et utiliser le lien hypertexte en modifiant SiSurvolCellule :
        Public Function SiSurvolCellule(n°L, n°C)
        Dim lien As String
          With ActiveSheet
            .Columns(n°C).Interior.ColorIndex = xlNone
            .Cells(n°L, n°C).Interior.ColorIndex = 4
            lien = "D:/Répertoire des films/" & .Cells(n°L, n°C).Value
            SiSurvolCellule = lien
          End With
        End Function
        
        0
      3. vieuxray > Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention  
         
        Re Patrice33740,

        Merci bien pour les chtis codes, j'ai fait des essais et ca pourrai bien faire mon affaire.

        Quelques infos si tu veux bien:

        --- A chaque fois que je reste sur une cellule, j'ai un message qui s'affiche dans une bulle

        Ex sur la ligne de ce film >>> 2033 future apocalpse.avi - cliquez une fois pour suivre
        cliquez et maintenez le bouton de la souris enfoncé pour sélectionnez cette cellule.

        Peut t'on le supprimer ou bien faire en sorte qu'il n'apparaisse plus ???

        --- Et pour les n°C et n°L je vois a quoi cela sert mais il viennent d'où les numéros pour faire aller le code la ou c'est le besoin ???

        Voila pour l'instant, merci a toi a plus tard.

        Cdlt Ray
        0
  2. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
     
    Re,

    Pour ne pas avoir le message, il ne faut pas créer le lien (et donc tu ne pas ouvrir le fichier via le lien) :
    Public Function SiSurvolCellule(n°L, n°C)
    Dim lien As String
      With ActiveSheet
        .Columns(n°C).Interior.ColorIndex = xlNone
        .Cells(n°L, n°C).Interior.ColorIndex = 4
      End With
    End Function

    Et ouvrir le fichier via
    Worksheet_SelectionChange


    Les n°C et n°L sont envoyés à la fonction SiSurvolCellule par les fonctions LIGNE() et COLONNE()) via les formules de chaque cellule de la liste des films :
    =SIERREUR(LIEN_HYPERTEXTE(sisurvolcellule(LIGNE();COLONNE());"film.avi");"film.avi")
    Elles permettent d'identifier la position de la cellule à colorer
    1
    1. vieuxray
       
      Salut Patrice,

      Une petite question svp

      Comment je peux faire pour étendre l'affichage sur trois colonnes A - B - C

      Bonne journée merci

      Cordialement Raymond
      0
      1. vieuxray > vieuxray
         
        Re Patrice,

        je viens de me relire et je trouve ma question pas trop clair

        Quand je parle d'affichage c'est que je souhaiterai étendre l'affichage de la barre verte mais sur trois colonnes A-B-C si cela est possible.

        colonne A affichage du noms des vidéos.avi
        colonne B affichage du poids des vidéos
        colonne C affichage de la durée vidéos

        une barre qui se déplace donc sur trois colonnes mais quand je clic le choix reste sur le nom du film choisi B et C reste facultatif

        désoler pour la confusion

        Merci a toi
        Ray
        0
  3. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
     
    Bonjour,

    Pour entendre la barre sur 3 colonnes, il suffit de modifier SiSulvolCellule :
    Public Function SiSurvolCellule(n°L, n°C)
    Dim lien As String
      With ActiveSheet.Cells(n°L, n°C)
        .Resize(1, 3).EntireColumn.Interior.ColorIndex = xlNone
        .Resize(1, 3).Interior.ColorIndex = 4
        lien = "D:/Répertoire des films/" & .Value
        SiSurvolCellule = lien
      End With
    End Function
    

    Mais il n'est pas possible d'étendre sur les 3 colonnes le lien hypertexte créé par formule, le changement de couleur continue de s'effectuer au survol du texte de la colonne A.
    Cordialement
    Patrice
    1
  4. vieuxray
     
    Salut Patrice,

    Merci pour les infos et le code modifier, c'est gentil a toi.

    Bon ca fonctionne mais la version hyperlien me plait bien, c'est envoi du film direct au lecteur multimédia.

    Malgré l'affichage de cette bulle infos, qui n'ai pas trop gênant mais ca manque de discrétion.

    Je vais adapter a mon code puis je verrai si ca me va ou pas.

    Je te souhaite un bon début de semaine, une bonne journée a toi et encore grand merci pour ton savoir partager.

    Cordialement
    Raymond
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. vieuxray
     
    Salut Patrice,

    Merci pour ta réponse et pour la modification, ca fonctionne bien.

    Mais il n'est pas possible d'étendre sur les 3 colonnes le lien hypertexte créé par formule, le changement de couleur continue de s'effectuer au survol du texte de la colonne A.

    Et pour cette réponse c'est très bien comme ca, nickel.

    Par contre est 'il possible de ne pas faire apparaitre voir svp la photo sur le lien ci dessous.

    je souhaiterai que lorsque je clic sur un titre que le nom s'affiche en D5 ca c'est fait et que le film se lance directement sans l'affichage des deux bulles
    et revenir a la liste quand le lecteur multi média se ferme (fin du film)

    http://www.cjoint.com/c/FKikbQbUegz

    Quand tu a le temps rien ne presse et si cela reste possible bien sur.

    Une bonne journée a toi et grand merci a toi pour l'aide que tu m'apportes.

    Cordialement Raymond
    0
  7. vieuxray
     
    Re Patrice,

    Merci pour ta réponse et pour le lien

    j'ai lu sur le lien, interressant je connais pour éventuellement modifier le registre, juste être attentif afin d'éviter la cata.

    je revois ca plus tard si ca s'avère vraiment utile.

    A partir du moment ou je clic sur un titre ca l'affiche en D5 ok

    et se charge pour lecture du film par le lecteur Windows.

    Comment fait tu svp a partir du clic pour envoyer le film vers le lecteur.

    A plus tard et merci a toi.

    Cdlt Raymond
    0
    1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
       
      Le film devrait être lancé par le lien, mais il se peut que le premier message le bloque.
      Je n'ai pas ce premier message mais seulement le second auquel il faut répondre pour que le lien soit effectif.
      0
  8. vieuxray
     
    Salut Patrice

    Merci pour la réponse,

    Je verrai a l'usage si cela est gênant auquel cas je regarderai le registre en suivant tes conseils et le lien proposer.

    je continue d'avancer sur ce programme, pour l'instant ca va bien, hum bon
    c'est pas gagner quand même.

    Merci pour ton aide bonne journée a toi

    Cdlt Raymond
    0