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 :

ouvrir un repertoire et pouvoir visualiser des photo.jpeg


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut ouvrir un repertoire et pouvoir visualiser des photo.jpeg
    bonjour
    suite à une action via un bouton je voudrais realiser la manip suivante
    ouvrir dans une fenetre (textbox ou autre) avec un controle barre de defilement (je sais pas si cela est le mieux)pour visualiser toutes les photos se trouvant dans un repertoire determiner .
    je precise
    si action sur bouton , j'ai dans le userfor un combobox qui va contenir un N° (ex: 1200) alors on va cherche le repertoire 1200 dans lequel on aura les photos à visionner dans le textbox ou autre .



    merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    J'ai fait ça sous word avec VBA 97, en... Bref, c'est très vieux et assez compliqué...
    Aujourd'hui, je ferais plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Test()
        Application.Dialogs(xlDialogInsertPicture).Show
    End Sub
    Je n'ai pas trouvé comment modifier le répertoire image
    alors je me suis débrouillé
    J'insère une image du répertoire qui m'intéresse, je la supprime et j'ouvre la boîte de dialogue intégrée en mode affichage -> Miniature
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Test2()
        ActiveSheet.Pictures.Insert("D:\CLIPART\Cartes\ASIESE.WMF").Select
        Selection.Delete
        Application.Dialogs(xlDialogInsertPicture).Show
    End sub
    Une autre solution me conviendrait aussi (!)

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut
    ouais pas simple


  4. #4
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut
    bonjour
    voila un debut de code
    cela donne une idee
    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
     
     
    Option Explicit
    Dim choixrepertoire As String
     
     
     
    Private Sub ScrollBar1_Click() 'choix de l'image
     Dim numimage As Integer
    numimage = 1
    'selectionne le chemin le prepertoire en fonction de la valeur du combobox1(ex: 1020)
    'faire test erreur si combobox vide ou repertoire non trouve ou pas d'image dans repertoire
    choixrepertoire = "\" & combobox1.Value & "\picture" & numimage & ".jpg"
    numimage = numimage + 1
     
     
     
     
    'visionnez l"image
      Picture1.Picture = LoadPicture(choixrepertoire)
     
    End Sub


    merci de votre aide

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu veux que je te dise ? Non ? Je te le dis quand même. Tu dois te préparer à une grave désillusion.
    L'exemple que je t'ai donné utilise une boîte de dialogue intégrée mais un clic sur une image l'insère dans le classeur. Et ce n'est sans doute pas ce que tu veux.
    Par contre, tu vas devoir lister les fichiers du répertoire voulu. Pour ça, voici déjà un code
    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
    Sub ListerUnRépertoire()
    Set fs = Application.FileSearch
        With fs
            .LookIn = "D:\Clipart\caricatures\"
            .FileType = msoFileTypeAllFiles
            If .Execute(SortBy:=msoSortByFileName, _
            SortOrder:=msoSortOrderAscending) > 0 Then
                MsgBox "Ce dossier contient " & .FoundFiles.Count & _
                    " fichier(s) répondant aux critères."
                For i = 1 To .FoundFiles.Count
                    If Right(LCase(.FoundFiles(i)), 4) = ".jpg" Then _
                        MsgBox .FoundFiles(i)
                Next i
            Else
                MsgBox "Aucun fichier n'a été trouvé."
            End If
        End With
    End Sub
    Ensuite, tu vas devoir insérer autant de contrôles image que tu voudras en voir apparaître dans ta page (userform)
    Ensuite tu devras gérer l'ouverture de n images, pas une de plus correspondant au nombre de tes contrôles.
    Ensuite, si tu veux un défilement, tu devras simuler le déplacement des images en modifiant la cible pour chaque contrôle image.
    Ensuite tu devras synchroniser ça avec une barre de défilement ou une toupie.
    Ensuite...
    C'est vraiment une usine à gaz pour pas grand chose... quand tout existe
    Si c'était simplement : Une liste d'images dans une listbox et l'affichage d'une image sur clic dans la liste, là c'est simple et réalisable. Tu pourrais même faire un zoom pour afficher l'image en plein écran, l'insérer dans une feuille de calculs... etc.
    Mais faire défiler tes images dans un userform comme dans l'explorateur... en VBA... Dans Excel...
    Bref, bon courage !

  6. #6
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello,

    une solution made in HTML : créer à la volée une page HTML qui présente les photos ...
    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
    41
    42
    43
    44
    45
    Option Explicit
     
    Function ExploreFicImg2HTML(ByVal path As String, _
                                ByVal filt As String) As String
     
     
    Dim fso As FileSystemObject
    Dim fic As File
    Dim str As String
     
    Set fso = New FileSystemObject
     
    For Each fic In fso.GetFolder(path).Files
        If fic.Name Like filt Then
            str = str & "<br><IMG SRC='" & path & fic.Name & "' width=200></br><div align=center>" & _
                        fic.Name & "</div><br><br>"
        End If
    Next fic
     
    ExploreFicImg2HTML = str
     
    Set fic = Nothing: Set fso = Nothing
    End Function
     
    Sub ExploreIt()
     
    Dim ie As Object
     
    Set ie = CreateObject("InternetExplorer.Application")
    ie.navigate "about:blank"
    ie.addressbar = False
    ie.document.Title = "Exploration du dossier"
    ie.MenuBar = False
    ie.StatusBar = False
    ie.Toolbar = False
    ie.Width = 400
    ie.Height = 300
    ie.Top = 100
    ie.Left = 100
    ie.document.body.innerHTML = ExploreFicImg2HTML("C:\Temp\", "*.jpg")
    ' libre à toi ici de mettre
    '   ie.document.body.innerHTML = ExploreFicImg2HTML(range("A2"), "*.jpg")
    ie.Visible = True
     
    End Sub

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

Discussions similaires

  1. [WD18] Ouvrir une fenetre pour sélectionner des photos
    Par phoenix916916 dans le forum WinDev
    Réponses: 8
    Dernier message: 26/03/2015, 12h24
  2. [XL-2003] Excel et ouvrir des photos avec un lien hypertexte
    Par Alain53 dans le forum Excel
    Réponses: 2
    Dernier message: 22/03/2010, 11h10
  3. [importation des photo jpeg a Rave Report]
    Par GHAZEL Taoufik dans le forum Bases de données
    Réponses: 9
    Dernier message: 24/01/2010, 10h42
  4. Click sur un button visualiser des photos
    Par mihaispr dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 20/03/2009, 11h27
  5. Visualisation des mise à jour en réseau
    Par fandor7 dans le forum Paradox
    Réponses: 2
    Dernier message: 06/12/2002, 16h54

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