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 :

problème avec ListView


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    technicien logistique
    Inscrit en
    Juillet 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien logistique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 19
    Par défaut problème avec ListView
    Bonjour
    J'ai un problème bien particulier :
    J'ai trouvé sur le site de M. Boisgontier (un GRAND Merci à lui pour tous ces exemples et macros !!), une macro pour afficher dans une listview des photos et les références correspondantes.

    Le mystère est qu'avec deux fichier identiques, l'un (classeur1) est ok, la listview est cohérente et les références sont bien là, ainsi que la barre des titres. Pour l'autre (ESSAI) rien ne va , pas de barre des titres, les photos ne sont pas là, et les références sont sur la même ligne.
    Pour les photos jointes il faut les mettre dans un sous dossier "Photos" dans le même répertoire. J'ai remarqué qui si on mets les photos dans le même dossier que le fichier excel alors même pour le fichier "classeur1" les photos ne sont plus affichées.

    Peut être que je me trompe mais pour moi les fichiers sont identiques !!

    Quelqu'un peut-il me dire où est l'erreur dans le fichier qui ne marche pas ???

    Seul le bouton "Voir les photos" est actif car j'ai laissé uniquement la macro du bouton photo pour ne pas avoir d'interaction éventuelles.

    Je vous remercie pour votre aide.

    Alain
    Images attachées Images attachées    
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Montre le code utilisé et la mise en situation. Tout le monde n'a pas envie de cliquer sur un site externe pour aller voir le code que tu as utilisé
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  3. #3
    Membre averti
    Homme Profil pro
    technicien logistique
    Inscrit en
    Juillet 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien logistique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 19
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Salut.

    Montre le code utilisé et la mise en situation. Tout le monde n'a pas envie de cliquer sur un site externe pour aller voir le code que tu as utilisé

    Bonjour,
    pourquoi cliquer sur le lien externe ????? le code est dans l'userform !!

    Cdt

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Fondamentalement, ça ne change pas le problème.

    Si on doit charger tes fichiers et créer une arborescence sur notre pc pour arriver à faire fonctionner ton machin, c'est qu'il y a un stûûût, que l'examen de ton code pourra déceler. Mais pour cela, il faut que tu donnes ton code dans des balises de code (sélection de ton code après le copier-coller et bouton # de la barre d'édition du message).

    Perso, je pressens une faute de frappe ou l'autre quelque part dans le fichier qui ne fonctionne pas...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Membre averti
    Homme Profil pro
    technicien logistique
    Inscrit en
    Juillet 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien logistique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 19
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Fondamentalement, ça ne change pas le problème.

    Si on doit charger tes fichiers et créer une arborescence sur notre pc pour arriver à faire fonctionner ton machin, c'est qu'il y a un stûûût, que l'examen de ton code pourra déceler. Mais pour cela, il faut que tu donnes ton code dans des balises de code (sélection de ton code après le copier-coller et bouton # de la barre d'édition du message).

    Perso, je pressens une faute de frappe ou l'autre quelque part dans le fichier qui ne fonctionne pas...


    Bonjour

    ok je fais un copier coller du code .
    En fait je viens de réessayer et même en faisant un copier/coller du code de mon code qui marche sur un autre fichier créé pour l'occasion, et en copiant/collant aussi les données de l'onglet "BDD" ça ne marche pas .

    merci

    Alain

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    Private Sub UserForm_Initialize()
        Set f = Sheets("BDD")
        Me.ImageList1.ImageHeight = 60
        Me.ImageList1.ImageWidth = 60 / 1.2
        répertoirePhoto = ThisWorkbook.Path & "/photos/"  ' adapter
        With Me.ListView1
            With .ColumnHeaders
                .Clear
                .Add , , "Nom", 80
            End With
            ligne = 1
            .Gridlines = True
            .View = lvwReport
            For Each c In f.Range("B9:B" & f.[B65000].End(xlUp).Row)
               .ListItems.Add , , c
                If Dir(répertoirePhoto & c & ".jpg") <> "" Then
                  Me.ImageList1.ListImages.Add , "Img" & ligne, LoadPicture(répertoirePhoto & c & ".jpg")
                  Set Me.ListView1.SmallIcons = Me.ImageList1
                  Me.ListView1.ListItems(ligne).SmallIcon = "Img" & ligne
                 End If
               ligne = ligne + 1
            Next c
        End With
    End Sub
    Private Sub ListView1_Click()
      nom = Me.ListView1.SelectedItem
      ActiveCell = nom
      For Each s In ActiveSheet.Shapes
        If s.Type = 13 Then
          If s.TopLeftCell.Address = ActiveCell.Offset(0, 1).Address Then s.Delete
        End If
      Next s
      répertoirePhoto = ThisWorkbook.Path & "/photos/"
      Set img = ActiveSheet.Pictures.Insert(répertoirePhoto & nom & ".jpg")
      img.Left = ActiveCell.Offset(, 1).Left + 1
      img.Top = ActiveCell.Offset(, 1).Top + 1
      ech = 0.75
      img.Height = img.Height * ech
      img.Width = img.Width * ech
    End Sub

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    La ligne suivante pose problème... Le séparateur à utiliser est "\" et pas "/". Je doute dès lors que ça fonctionne d'un côté et pas de l'autre, car "/" ne saurait fonctionner.

    Es-tu sûr dès lors que tes fichiers sont rigoureusement identiques? Perso, j'ai de gros doutes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Path & "/photos/"
    Lorsque tu dis "Ca ne marche pas"? Que veux-tu dire? As-tu une erreur? si oui, sur quelle ligne? Avec quel message d'erreur? Si pas d'erreur mais pas de résultat, as-tu essayé le code en pas à pas pour passer sur chaque ligne de code et voir ce qui se passe à l'exécution de chaque ligne?

    [EDIT] Au temps pour moi, dir accepte également "/" (j'ai appris quelque chose )
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  7. #7
    Membre averti
    Homme Profil pro
    technicien logistique
    Inscrit en
    Juillet 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien logistique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 19
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    La ligne suivante pose problème... Le séparateur à utiliser est "\" et pas "/". Je doute dès lors que ça fonctionne d'un côté et pas de l'autre, car "/" ne saurait fonctionner.

    Es-tu sûr dès lors que tes fichiers sont rigoureusement identiques? Perso, j'ai de gros doutes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Path & "/photos/"
    Lorsque tu dis "Ca ne marche pas"? Que veux-tu dire? As-tu une erreur? si oui, sur quelle ligne? Avec quel message d'erreur? Si pas d'erreur mais pas de résultat, as-tu essayé le code en pas à pas pour passer sur chaque ligne de code et voir ce qui se passe à l'exécution de chaque ligne?

    en fait les deux macros sont vraiment identiques.
    Pour en être sûr j'ai fait une exportation de l'userform et ensuite je l'ai importé dans l'autre fichier.

    Je viens de changer la ligne , et c'est pareil, ça marche toujours dans le premier, et ça marche toujours pas dans le deuxième ; le premier fichier marchait même avec l'erreur


    Alain

  8. #8
    Membre averti
    Homme Profil pro
    technicien logistique
    Inscrit en
    Juillet 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien logistique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 19
    Par défaut
    Citation Envoyé par chaispas31 Voir le message
    en fait les deux macros sont vraiment identiques.
    Pour en être sûr j'ai fait une exportation de l'userform et ensuite je l'ai importé dans l'autre fichier.

    Je viens de changer la ligne , et c'est pareil, ça marche toujours dans le premier, et ça marche toujours pas dans le deuxième ; le premier fichier marchait même avec l'erreur


    Alain
    Bonjour,
    je viens de trouver la solution. Un peu par hasard :
    Il faut dans le nouvel userform que l'on a importer supprimer la listview et en recréer une. Et ça MARCHE. Je ne sais pas pourquoi mais du moment que ça marche je suis content.

    Merci pour votre aide.

    Alain

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

Discussions similaires

  1. problème avec listView
    Par jmi-android dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 24/10/2010, 02h05
  2. Problème avec Listview Insert
    Par restesouple dans le forum Windows Forms
    Réponses: 1
    Dernier message: 09/04/2008, 06h29
  3. Problème avec ListView et multiselect
    Par dadooo dans le forum Windows Forms
    Réponses: 1
    Dernier message: 17/06/2007, 15h45
  4. Problème avec listview
    Par Svenna dans le forum Général VBA
    Réponses: 9
    Dernier message: 27/01/2007, 16h55
  5. [C#] Problème avec ListView
    Par yannick dans le forum Windows Forms
    Réponses: 4
    Dernier message: 03/06/2004, 17h29

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